如何(自动)测试使用SWTBot(与Tycho)关闭应用程序的不同方法



对此可能有一个简单的答案,但我发现自己很难弄清楚:如何测试使用SWTBot退出应用程序的不同方法?

在我的基于EclipseRCP3.x的应用程序中,您可以通过三种不同的方式关闭应用程序:

  1. 每次鼠标点击菜单项文件退出
  2. 根据菜单上的键盘快捷键Alt+F X
  3. 每个快捷方式(Ctrl+Q

我目前正在SWTBot的帮助下为这种行为编写单元测试。运行它们时,我遇到了一个简单而真实的问题:一旦测试了关闭应用程序的一种方法,应用程序就会关闭,因此所有其他测试都会失败。

所有测试当前都驻留在一个测试类中。

因此,我的问题是:如何从Eclipse开始成功运行所有测试。但是:我怎么能让Tycho在构建过程中运行它们,这样下面的测试就不会因为应用程序不再打开而自动失败?

简而言之,您不能用SWTBot测试关闭应用程序。

正如您已经发现的,关闭应用程序也会终止VM。由于测试与被测试的应用程序在同一个虚拟机中运行,因此测试也将终止。

除了这些含义之外,您不应该测试关闭应用程序。您提到的关闭应用程序的三种方法都是由平台提供的,因此平台应该对该功能进行测试,而不是对您的应用程序进行测试。

最新更新