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

时间:2019-12-13 21:56:00

标签: java testing javafx testfx

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

左侧文本字段具有fx:id newCol 虽然右边的texfield的fx:id为Name

我正在做以下测试

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

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

但是,将第一条消息键入到左侧文本字段中后,发生的情况是,应该在右侧文本字段中键入的下一条消息也将进入左侧texfield中。在第二条消息之前,鼠标确实向右稍微移动了一点。

现在当我如下图交换两行

 @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。为什么会这样呢?我不知道。

1 个答案:

答案 0 :(得分:0)

好的,所以它不起作用的原因是因为我将4.0.13-alpha用于testfx-core,将testfx-junit4与jdk 11一起用于依赖项。但是,有人请纠正我我错了,但是与mouseMove有关的任何事情在jdk 11上均无法正常工作,并且所有这些都在4.0.15-alphatestfx-junit5中针对相关性进行了纠正。