java - 为什么没有单击正确的 TextField TestFX?

标签 java testing javafx testfx

我在按钮栏中有 2 个文本字段。我已经给了两个 fxid。两个文本字段彼此相邻。

左边的文本字段有一个 fx:id 新列 虽然右侧的 texfield 具有 Name

的 fx:id

我正在做下面的测试

 @Test
    public void ensureNewColIsCreated() {
        clickOn("#newCol").write("To do list!");
        sleep(2000);
        clickOn("#Name").write("New page");
        sleep(2000);
    }

预期的结果应该是它首先转到左侧的文本字段,然后是命令。然后它应该在正确的文本字段中输入另一条消息。

然而,在第一条消息输入到左侧文本字段后,下一条应该输入到右侧文本字段的消息也被输入到左侧文本字段中。就在第二条消息之前,鼠标确实稍微向右移动。

现在,当我如下所示交换两行时

 @Test
    public void ensureNewColIsCreated() {
        clickOn("#Name").write("To do list!");
        sleep(2000);
        clickOn("#newCol").write("New page");
        sleep(2000);
    }

消息应首先输入到正确的文本字段中。但是,它仍然被输入到左侧的文本字段中。两条消息都是。

如果我只是在不指定 fx:id 的情况下执行以下操作,它仍然会在左侧文本字段中输入

@Test
    public void ensureNewColIsCreated() {
        write("Test");
    }

我猜我在使用 testfx 时出现了严重错误或其他原因,因为我对它还很陌生,而且这是我第一次进行任何类型的测试。如果有人可以帮助我,那就太好了。

编辑:好的,我通过让测试点击我关闭应用程序的按钮再次测试了它,但是它没有这样做表明测试没有点击我给它的 fx:ids。为什么会这样?我不知道。

最佳答案

好的,所以它不起作用的原因是因为我正在使用 4.0.13-alpha对于 testfx-coretestfx-junit4对于依赖项以及 jdk 11。但是,如果我错了,请有人纠正我,但是与 mouseMove 有关的任何事情在 jdk 11 上都无法正常工作,所有这些都已在 4.0.15-alpha 中得到纠正。和 testfx-junit5对于依赖项。

关于java - 为什么没有单击正确的 TextField TestFX?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59330288/

相关文章:

java - 以编程方式向 yarn 提交 spark 应用程序

java - 背景鼠标光标 (JavaFX)

javascript - 在提交/部署之前检测 Browserify 损坏的构建

java - Dropwizard 集成测试与 TestResource

JavaFX 8-将 TableView 列 ContextMenu 锚定在列标题的正下方?

java - 从 java 代码启动 javaFX 应用程序

java - 使用 Akka http 处理 HttpResponse 404 上的重试逻辑

javascript - TestCafe:检查图像

java - 兼容 MIME 媒体类型的已注册邮件正文阅读器为 : application/json;charset=UTF-8

java - 如何有效地找到具有相同字符数的最长子串