Java 按(KeyCode.Enter)不会多次工作TestFX?
我将junit5 Testfx与jdk 11一起使用。我有以下测试Java 按(KeyCode.Enter)不会多次工作TestFX?,java,testing,javafx,testfx,Java,Testing,Javafx,Testfx,我将junit5 Testfx与jdk 11一起使用。我有以下测试 @Test void should_contain_button_with_text(FxRobot robot) { robot.clickOn("#newCol").write("Done"); robot.press(KeyCode.ENTER); robot.clickOn("#newCard").write("Cleaning");
@Test
void should_contain_button_with_text(FxRobot robot) {
robot.clickOn("#newCol").write("Done");
robot.press(KeyCode.ENTER);
robot.clickOn("#newCard").write("Cleaning");
press(KeyCode.ENTER);
robot.sleep(2000);
}
newCol
和newCard
都是文本字段
预期结果应该是机器人首先进入newCol
,按enter键后,它应该进入newCard
并执行相同操作
但是,它会转到newCol
并按enter fine键,但第二次按则不起作用。为什么会这样呢。只能按一次键(KeyCode)
如果有人能帮我,我将非常感激。正如@Slaw所建议的,您首先必须释放钥匙才能再次使用它
robot.press(KeyCode.ENTER).release(KeyCode.ENTER);
以上的方法奏效了。其他按键操作也是如此。也许你必须先模拟释放回车键,然后才能再次按下它?@Slaw非常感谢,我从来都不知道我们之后必须释放它们。它成功了;)我找不到关于这个的像样的文档。据我所知,这本书根本没有任何与关键事件相关的内容。我能找到的最好的是的文档,它只说:“按下给定的键,直到通过
release(KeyCode…
)显式释放。按下后,将调用WaitForAsyncUtils.waitForFxEvents()
”。