10

可能重复:
selenium 2.4.0,如何检查是否存在警报

我正在使用以下代码关闭警报窗口:

Alert alert3 = driver.switchTo().alert();
alert3.dismiss();

警报会在主窗口打开几秒钟后出现。

如何等待并检查是否出现警报?

4

2 回答 2

15

没有等待警报的默认方法。

但是,您可以像这样编写自己的方法。

waitForAlert(WebDriver driver)
{
   int i=0;
   while(i++<5)
   {
        try
        {
            Alert alert = driver.switchTo().alert();
            break;
        }
        catch(NoAlertPresentException e)
        {
          Thread.sleep(1000);
          continue;
        }
   }
}
于 2012-09-28T12:12:49.510 回答
-1
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;

 }
于 2012-09-28T13:05:08.003 回答