java - 两个函数while和预期条件有什么区别
问题描述
我有两个函数用于实际查找在某个时间后(大约 7 秒)出现的元素,所以我尝试在预期条件下执行它 - 元素的可见性/存在持续时间为 10 秒,我收到错误元素没有出现尽管我在另一方面看到了它,但我确实发挥了作用:
public SafeModeScreen validateSafeModeScreen(){
boolean flag = false;
while(!flag) {
try {
System.out.println("The name is :" +driver.findElement(safeModeScreen).getAttribute("name"));
System.out.println("The screen height is :" + driver.findElement(safeModeScreen).getSize().getHeight());
System.out.println("The screen width is :" + driver.findElement(safeModeScreen).getSize().getWidth());
flag = true;
}
catch (Exception e){
}
}
Assert.assertTrue(flag, "Safe mode screen didn't appear");
return this;
}
另一个功能是:
public void waitForElementToBeVisible(By element, int delay) {
wait = new WebDriverWait(driver, delay);
wait.until(ExpectedConditions.visibilityOfElementLocated(element));
wait = new WebDriverWait(driver, 30);
}
并且有效,它们之间有什么区别?谢谢
解决方案
推荐阅读
- python - 如何将 tidyverse 从 R 翻译成 Python 中的 pandas?
- bash - 如何删除 100 行文本文件中每 10 行的最后 3 行?
- azure - Azure ARM 模板动态变量绑定
- laravel - 构建我的 Laravel 和 Vue js SPA 以便我可以将其部署到 Live Server 的 webpack 命令是什么?
- linux - 如何使用终端将代码添加到文件中?
- opengl - OpenGL 中的原子和内存屏障
- python - 使用 networkx 从大熊猫数据帧中绘制网络
- c# - 不直接附着到对象的碰撞触发
- c++ - 为 MinGW 静态链接 libssh
- c# - MVC Web 应用程序 - Azure AD 和外部帐户