我是Selenium Web驱动程序的新手,并将其与Java一起使用。

我可以启动应用程序,但收到SSL证书错误,请让我知道如何解决此问题。
我实际上正在学习它,并且需要在我的工作中实施,如果我能克服这一点将非常有帮助。

我正在使用以下代码:
公共课程Test1 {

private static InternetExplorerDriver driver;

@Before
public void beforeclass ()
{
        System.setProperty("webdriver.ie.driver", "C:\\My Folder\\selenium-2.33.0\\IEDriverServer.exe");
        DesiredCapabilities capabilities = DesiredCapabilities.internetExplorer();
        capabilities.setCapability(InternetExplorerDriver.INTRODUCE_FLAKINESS_BY_IGNORING_SECURITY_DOMAINS, true);
        capabilities.setCapability(CapabilityType.ACCEPT_SSL_CERTS, true);
        capabilities.setJavascriptEnabled(true);
        driver = new InternetExplorerDriver(capabilities);

}

@Test
public void Test() throws Exception
{

     driver.get("www.gmail.com");
     driver.getTitle();
     driver.getCurrentUrl();
     System.out.println(driver.getCurrentUrl());
             driver.findElement(By.name("username")).sendKeys("Admin1");
     driver.findElement(By.name("password")).sendKeys("Password2");
     }

   @After
   public void afterclass()
   {

       System.out.println("webdriver");

   }


}

提前致谢。

最佳答案

我不认为有一种适当设置方法。我想CapabilityType.ACCEPT_SSL_CERTS不适用于IE,Selenium旨在忽略特定浏览器的无效功能,并且不会引发异常。

这是一种解决方法,您可以单击链接“继续浏览此网站(不推荐)”。绕过它。

尝试

// check if your driver is IEDriver and driver's Title contains "Certificate"
// then
driver.navigate().to("javascript:document.getElementById('overridelink').click()");
driver.findElement(By.name("username")).sendKeys("Admin1");
driver.findElement(By.name("password")).sendKeys("Password2");

10-07 18:55
查看更多