这是我的代码:
try {
WebDriverWait wait = new WebDriverWait(driver, 10);
Alert alert = wait.until(ExpectedConditions.alertIsPresent());
//Accepting alert.
alert.accept();
System.out.println("Accepted the alert successfully.");
} catch(Throwable e) {
System.err.println("Error came while waiting for the alert popup. "+e.getMessage());
}
错误显示如下:
等待警报弹出窗口时出错。预期条件失败:等待警报出现(尝试10秒钟,间隔500 MILLISECONDS)
答案 0 :(得分:2)
我建议使用以下代码。
WebDriverWait wait = new WebDriverWait(driver, 2);
wait.until(ExpectedConditions.alertIsPresent());
try{
Alert alert = driver.switchTo().alert().accept();
}
catch (Exception e)
System.out.println("No alert");
答案 1 :(得分:1)
通常没有必要等待警报。您可以使用正常的代码,如
Alert alert = webDriver.switchTo().alert();
试一试。 PS:这个Alert类只能通过javascript处理警告框,检查你的警报是否不是由任何html元素构成