如何等待,直到使用TestFX可见元素?
问题描述:
我想从TestFX使用waitUntil()方法等到屏幕上出现一个对话框。我发现Wiki提供的示例,但它似乎不适用于我。任何人都可以帮我弄清楚这一点吗?如何等待,直到使用TestFX可见元素?
答
我设法通过来解决此问题:
import org.hamcrest.Matchers;
import org.loadui.testfx.controls.impl.VisibleNodesMatcher;
waitUntil(".dialog-pane", Matchers.is(VisibleNodesMatcher.visible()));
答
您可以使用此方法也:
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。
您还可以在秒内传递超时参数: waitUntil(“。dialog-pane”,Matchers.is(VisibleNodesMatcher.visible()),10); –