请查看此代码段:
try {
myTransactionsPage.getEnterTransaction();
} catch (UnhandledAlertException e) {
String alertText = e.getAlertText();
assertThat(alertText.contains("Please enter text"));
}
driver.switchTo().alert().accept();
我想对警告文本做出断言。当我按“添加交易' key(简单.click())我想捕获unhandleAlertException。这让我感到非常惊讶
org.openqa.selenium.UnhandledAlertException: unexpected alert open: {Alert text : Please enter text in the Paid To/From input box.}
你遇到过这个问题吗?捕获异常并没有抓住它?
答案 0 :(得分:0)
我已经处理了警报异常,
try {
//click button
} catch (UnhandledAlertException e) {
Alert alert = driver.switchTo().alert();
String alertText = alert.getText();
assertThat(alertText.contains("Please enter text"));
alert.accept();
}
答案 1 :(得分:0)
当您不处理警报框时,将抛出UnexpectedAlertPresentException
。
使用硒无法在警告框内截图。您需要接受还是拒绝警报框。
在我的情况下,我接受警报框并获取URL的屏幕截图。
try {
//capture the screenshot
} catch (UnexpectedAlertPresentException e) {
Alert alert = driver.switchTo().alert();
String alertText = alert.getText();
System.out.println("ERROR: (ALERT BOX DETECTED) - ALERT MSG : " + alertText);
alert.accept();
}