Chrome 驱动程序无法识别警报消息框



我正在使用Selenium Chrome驱动程序来测试我的应用程序。

浏览器中有一个页面,在加载时会出现警报消息,我必须单击确定

问题是当我尝试在代码中使用driver.SwitchTo().Alert时。当页面仍在加载时,警报将显示在前台页面上。当我此时继续调试时,我的驱动程序会无限期地等待,当我手动单击"确定"按钮时,它会尝试switchto().alert,但由于没有警报,因此失败。

我将不胜感激对此的任何帮助。

注意:页面处于加载表单中,直到我单击警报上的确定按钮,我想知道它是否是警报

我也遵循了以下解决方案,但它对我不起作用 https://groups.google.com/forum/#!topic/selenium-users/CixorzKZE4E

我得到以下异常, 对远程WebDriver服务器的URL请求 localhost:3200/session/0285afd8049f70878988405463448d24/...60 秒后超时。

我仍然可以在我的孩子窗口上看到警报。

如果webdriver 实例是驱动程序,您可以使用显式等待加载 part.ie

WebDriverWait wait=new WebDriverWait(driver, //mention the time as per need here ie 20);
wait.until(ExpectedConditions.urlToBe("mention the url"));

在警报处理代码之前。

您需要接受或消除警报,您可以尝试的代码:

driver.switchTo().alert().accept();

我发现警报是Javascript警报,如何处理javascript警报在Selenium文档中提到。

相关内容

  • 没有找到相关文章

最新更新