我使用JAVA开发了selenium自动化框架,我遇到了问题。 当我点击任何按钮时,说过滤器或清除过滤器应用程序显示一个加载窗口,之后,我们可以执行下一个操作。 我已经添加了以下代码,等待加载窗口可见false但它无法正常工作。
HttpClient
在web元素中我传递了加载窗口XPATH。每次代码不等待窗口关闭时,都会开始点击按钮并抛出异常
未知错误:元素...在点(178,391)处无法点击。其他元素将收到点击:
我还添加了点击
的代码wait.until(ExpectedConditions.invisibilityOf(webElement));
System.out.println("Wait Untill Loading Window Closed");
existFlag=true;
请帮助我等待装载窗口关闭。
答案 0 :(得分:0)
您应该使用隐式等待来实现此目的。初始化驱动程序实例后,添加此语句以设置驱动程序对象的隐式等待。
driver.manage().timeouts().implicitlyWait(Integer.parseInt("30"),TimeUnit.SECONDS);
答案 1 :(得分:0)
您可以使用:
wait.until(ExpectedConditions.visibilityOfElementLocated(webElement));
webElement.click();
答案 2 :(得分:0)
你可以写个人服务员。我想,当你看到这个卷轴时,你会遇到一些情况。例如,您可以尝试使用下一种方法:
public void waitIfScrollerStillVisibe(int seconds, By locator) {
int counter = 0;
while (!isElemenyVisible(locator)) {
if (counter == seconds) {
new throw ElementIsNotVisibleException();
}
else {
Thread.sleep(seconds);
counter++;
}
}
}