使用webdriver的phantomjs:无法处理弹出/警报

时间:2016-06-17 06:35:28

标签: selenium selenium-webdriver nullpointerexception

我正在尝试使用phantomjs作为驱动程序来处理弹出窗口,我想在变量中复制alert / popup的文本。 我写代码: 但我得到例外:线程中的异常" main" java.lang.NullPointerException 任何人都知道如何使用带有webdriver的phantomjs处理弹出/警报。 我写了代码:

 js.executeScript("window.alert = function(msg){JavascriptExecutor js=(JavascriptExecutor) driver;
        document.lastAlert=msg;};");
        Object text = js.executeScript("return document.lastAlert");
        System.out.println(text.toString());

1 个答案:

答案 0 :(得分:1)

Selenium有与javascript警报交互的方法。您可以按照以下方式与javascript警报进行交互:

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

从这里开始,您可以获得警告文字:

String alertText = alert.getText();

您不需要任何JavaScript来执行此操作。只是普通的Java代码可以为您完成所有这些。