【发布时间】:2012-09-28 11:37:45
【问题描述】:
我正在使用以下代码来关闭警报窗口:
Alert alert3 = driver.switchTo().alert();
alert3.dismiss();
警报会在主窗口打开几秒钟后出现。
如何等待并检查是否出现警报?
【问题讨论】:
标签: java selenium alert selenium-webdriver
我正在使用以下代码来关闭警报窗口:
Alert alert3 = driver.switchTo().alert();
alert3.dismiss();
警报会在主窗口打开几秒钟后出现。
如何等待并检查是否出现警报?
【问题讨论】:
标签: java selenium alert selenium-webdriver
没有等待警报的默认方法。
但是,您可以像这样编写自己的方法。
waitForAlert(WebDriver driver)
{
int i=0;
while(i++<5)
{
try
{
Alert alert = driver.switchTo().alert();
break;
}
catch(NoAlertPresentException e)
{
Thread.sleep(1000);
continue;
}
}
}
【讨论】:
public boolean isAlertPresent() {
boolean presentFlag = false;
try {
// Check the presence of alert
Alert alert = driver.switchTo().alert();
// Alert present; set the flag
presentFlag = true;
// if present consume the alert
alert.accept();
} catch (NoAlertPresentException ex) {
// Alert not present
ex.printStackTrace();
}
return presentFlag;
}
【讨论】: