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

How to (automatedly) test different ways to close an application with SWTBot (with Tycho)

可能对此有一个简单的答案,但我发现自己很难弄明白:How can I test different ways to exit an application with SWTBot?

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

  1. 鼠标单击菜单项 (文件 > 退出)
  2. 每个 菜单上的键盘快捷键 (Alt+F X)
  3. 每个快捷键 (Ctrl+Q)

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

所有测试目前都在一个测试中class。

因此,我的问题是:对于初学者,如何从 Eclipse 中 运行 成功地进行所有测试。而且:我怎样才能在构建过程中通过 Tycho 获得它们 运行,以便后续测试不会因为应用程序不再打开而自动失败?

简而言之,您无法使用 SWTBot 测试关闭应用程序。

如您所知,关闭应用程序也会终止 VM。由于您的测试 运行 在与被测应用程序相同的 VM 中,因此测试也将终止。

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