警报处理+ Java + webdriver

时间:2013-06-12 13:08:30

标签: selenium webdriver

我正在尝试使用开关提醒并执行操作但我遇到错误。

现在真正的问题是当我把下面的代码放在try中时,抓住它完美无缺。我的意思是它完美地处理警报。但是当我使用相同而不尝试时,捕获代码会抛出以下异常

  Alert alert = driver.switchTo().alert();
            String AlertText = alert.getText();
System.out.println(javascriptconfirm.getText());
            alert.accept();

请找到以下错误

No alert is present (WARNING: The server did not provide any stacktrace information)

1 个答案:

答案 0 :(得分:3)

这个想法是当你处理警报时,你必须先检查警报是否存在。 我会用这种方法:

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;

 }

here您可以获得详细信息另外,请不要忘记逐步调试以了解警报出现/不出现的步骤。 希望这会对你有所帮助。