我正在尝试使用开关提醒并执行操作但我遇到错误。
现在真正的问题是当我把下面的代码放在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)
答案 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您可以获得详细信息另外,请不要忘记逐步调试以了解警报出现/不出现的步骤。 希望这会对你有所帮助。