1

我正在尝试在 IntelliJ 中测试 Java FX 应用程序并且我正在使用 TestFX 但是我不确定如何测试单击界面上的按钮时是否打开窗口。我尝试制作一个吸气剂来获得初级阶段,然后断言这将打开 - 但是这不是应该出现在按钮单击上的阶段。

有什么建议/帮助吗?

谢谢。

4

1 回答 1

0

如果您只想测试生成的 Window 是否显示这应该这样做(使用 Hamcrest 匹配器):

FxAssert.verifyThat(window("My Window"), WindowMatchers.isShowing());

如果您想实际进一步与该窗口交互或测试该窗口,那么您应该尝试使用 FXRobot 的 targetWindow(...) 方法之一(ApplicationTest 和 ApplicationRule 从中派生)。存在服务器过载,但最简单的一种是您提供窗口标题的位置:

https://testfx.github.io/TestFX/docs/javadoc/testfx-core/javadoc/org.testfx/org/testfx/api/FxRobot.html#targetWindow(java.lang.String)

这将为您提供该窗口场景的 FXRobot 实例,以便您执行进一步的测试。

注意:这个答案是指 TestFX 4。

于 2019-10-16T13:23:15.457 回答