在selenium web驱动程序中处理firefox安全警告

时间:2016-02-18 12:13:49

标签: java firefox selenium-webdriver

在Firefox上观察到安全警告:

您在此页面上输入的信息将通过不安全的连接发送,并可由第三方读取。 您确定要发送此信息吗? 单击继续或取消

点击继续我尝试使用Robot类方法

Robot robot =new Robot(); 
robot.keyPress(KeyEvent.VK_LEFT);
robot.keyPress(KeyEvent.VK_ENTER);
System.out.println("key pressed");
robot.keyRelease(KeyEvent.VK_ENTER); 

但是我得到 UnhandledAlertException :意外的模式对话框(文本:您在此页面上输入的信息将通过不安全的连接发送,并可由第三方读取。

您确定要发送此信息吗?):您在此页面上输入的信息将通过不安全的连接发送,并可由第三方读取。

您确定要发送此信息吗?

我也试过手动点击继续,然后继续使用selenium脚本 1手动关闭
 2 WebElement success = wait.until(ExpectedConditions                     .visibilityOfElementLocated(By.cssSelector( “错误-MSG”)));

然后我得到WebDriver异常“.error-msg”不是Web元素

2 个答案:

答案 0 :(得分:0)

https://stackoverflow.com/a/31860470/5737319

前一段时间有人发布了类似的问题。这个答案可能对你有帮助

答案 1 :(得分:0)

以下为我在Java工作

    private void acceptSecurityAlert() {

    Wait<WebDriver> wait = new FluentWait<WebDriver>(driver).withTimeout(10, TimeUnit.SECONDS)          
                                                            .pollingEvery(3, TimeUnit.SECONDS)          
                                                            .ignoring(NoSuchElementException.class);    
    Alert alert = wait.until(new Function<WebDriver, Alert>() {       

        public Alert apply(WebDriver driver) {

            try {

                return driver.switchTo().alert();

            } catch(NoAlertPresentException e) {

                return null;
            }
        }  
    });

    alert.accept();
}