如何在selenium java中处理UnhandledAlertException?(仅限UnhandledAlertException)

时间:2017-07-18 14:07:49

标签: selenium selenium-webdriver

在我申请的任何地方我都会收到服务器弹出的不完整回复,但我不知道我会在哪里获得该弹出窗口

应该接受弹出/提醒

(仅限UnhandledAlertException)

我的错误是:

org.openqa.selenium.UnhandledAlertException:出现模态对话框:来自服务器的不完整回复 构建信息:版本:' 2.53.0',修订版:' 35ae25b',时间:' 2016-03-15 17:00:58' 系统信息:主机:' LAPTOP-50ENJGQ1',ip:' 10.0.0.58',os.name:' Windows 10',os.arch:&# 39; x86',os.version:' 10.0',java.version:' 1.8.0_121' 驱动程序信息:org.openqa.selenium.firefox.FirefoxDriver

2 个答案:

答案 0 :(得分:0)

我建议尝试手动分析UI步骤。你可以在你的代码中尝试这个,如果你在之后或之前发现你得到任何警报。

try {
        WebDriverWait wait = new WebDriverWait(driver, 2);
        wait.until(ExpectedConditions.alertIsPresent());
        Alert alert = driver.switchTo().alert();
        System.out.println(driver.switchTo().alert().getText());
        alert.accept();
    } catch (Exception e) {
        //exception handling
    }

请提供有关您的问题的更多信息。

答案 1 :(得分:0)

您需要接受还是拒绝警报框。如果不这样做,就无法捕获屏幕截图。当您不处理警报框时,将引发UnexpectedAlertPresentException

以下是我处理此异常的方式。

Alert alert = driver.switchTo().alert();
String alertText = alert.getText();
System.out.println("ERROR: (ALERT BOX DETECTED) - ALERT MSG : " + alertText);
alert.accept();