如何使用TestFX等到元素可见?

时间:2017-04-26 13:52:33

标签: java javafx dialog testfx

我尝试使用TestFX中的waitUntil()方法等到屏幕上出现对话框。我找到了Wiki提供的示例,但它似乎并不适合我。任何人都可以帮我解决这个问题吗?

2 个答案:

答案 0 :(得分:1)

我设法通过使用:

来解决这个问题
import org.hamcrest.Matchers;
import org.loadui.testfx.controls.impl.VisibleNodesMatcher;

waitUntil(".dialog-pane", Matchers.is(VisibleNodesMatcher.visible()));

答案 1 :(得分:1)

您也可以使用此方法:

import org.testfx.util.WaitForAsyncUtils;

WaitForAsyncUtils.waitFor(10, TimeUnit.SECONDS, new Callable<Boolean>() {
    @Override
    public Boolean call() throws Exception {
        return find(".dialog-pane").isVisible();
    }
});

使用此解决方案,您还可以定义TimeUnit。