Java TestFX测试通过,但没有通过
我正在尝试为我的大学项目编写GUI测试。我正在尝试使用TestFX4.0.4来完成这项工作,但我遇到了一个问题。对于该项目,我们还必须使用与Travis的持续集成。这意味着我必须使GUI测试无头化。然而,当我试着无头运行我的测试时,它们失败了,而当它们满脑子的时候,它们通过了 这是我用来运行测试headless的代码:Java TestFX测试通过,但没有通过,java,testfx,Java,Testfx,我正在尝试为我的大学项目编写GUI测试。我正在尝试使用TestFX4.0.4来完成这项工作,但我遇到了一个问题。对于该项目,我们还必须使用与Travis的持续集成。这意味着我必须使GUI测试无头化。然而,当我试着无头运行我的测试时,它们失败了,而当它们满脑子的时候,它们通过了 这是我用来运行测试headless的代码: @BeforeClass public static void setupHeadlessMode() { System.setProperty("testfx.robo
@BeforeClass
public static void setupHeadlessMode() {
System.setProperty("testfx.robot", "glass");
System.setProperty("testfx.headless", "true");
System.setProperty("prism.order", "sw");
System.setProperty("prism.text", "t2k");
System.setProperty("java.awt.headless", "true");
}
我运行的测试单击options按钮,该按钮将场景切换到options菜单,然后必须单击musicButton以切换是否播放音乐。在这种情况下,场景切换可能会导致故障,但我不知道如何避免这种情况。这是测试代码:
@Test
public void testMusicPlaying() {
clickOn("#optionsButton");
assertThat((boolean) ConfigLoader.get("musicPlaying")).isTrue();
clickOn("#musicButton");
assertThat((boolean) ConfigLoader.get("musicPlaying")).isFalse();
clickOn("#musicButton");
assertThat((boolean) ConfigLoader.get("musicPlaying")).isTrue();
}