Firefox Error: “Your connection is not secure” while launching driver with Selenium 3.0.1 using Java

偶尔善良 提交于 2019-12-17 19:54:47

问题


My Firefox version is 46.0.1 and Selenium version is 3.0.1. I am getting error:

Your connection is not secure

while executing following code:

    @Test
public void test() {
    ProfilesIni profile = new ProfilesIni();
    FirefoxProfile ffProfile = profile.getProfile("newCretedProfile");
    ffProfile.setAcceptUntrustedCertificates(true);
    ffProfile.setAssumeUntrustedCertificateIssuer(false);
    System.setProperty("webdriver.gecko.driver", "D:\\SELENUIUM\\Drivers\\geckodriver.exe");
    FirefoxDriver driver = new FirefoxDriver(ffProfile);
    driver.get("http://www.google.com");
    driver.quit();
}

I have created new firefox profile and followed steps from this url

Nevertheless it's not working and giving me same error while I launching any site.


回答1:


Download Firefox 55 beta and set

capabilities.setCapability("acceptInsecureCerts", true);

Here is my code that works for Firefox 55 beta:

DesiredCapabilities capabilities = new DesiredCapabilities();
capabilities.setBrowserName("firefox");
capabilities.setCapability("acceptInsecureCerts", true);
RemoteWebDriver driver = new RemoteWebDriver(Environment.remoteWebDriverURL, capabilities);



回答2:


I have tried this approach and it worked well for me.

Create new firefox profile by following below step.

  1. Close all your firefox windows
  2. In the Run dialog box, type in: ‘firefox.exe -p' and then Click OK.
  3. Click “Create Profile”
  4. Create a name for your new profile(say Selenium)
  5. Click “Choose Folder”
  6. Pick location something easy to find — like “C:\NewFirefoxProfile”
  7. Click Finish
  8. Now after selecting newly created profile, start Firefox. Open the specific url you were getting 'Secure Connection Issue', accept SSL certificates for this profile.

Now use the newly created firefox profile to run your selenium test. Modify below code as per your requirement.

System.setProperty("webdriver.firefox.marionette","D:\\SELENUIUM\\Drivers\\geckodriver.exe");
ProfilesIni profile = new ProfilesIni();    
FirefoxProfile myprofile = profile.getProfile("C:\\NewFirefoxProfile");//location of your new firefox profile 
WebDriver driver = new FirefoxDriver(myprofile);
driver.get("https://cacert.org/");



回答3:


With FF v53+ and Se 3.x (summer 2017), advice from before (May?) 2017 is no longer true.

You have to use Marionette and set capability to True.

Took me few days to sort out all old and obsolete advice, yours for free. :-)




回答4:


Looks like it is not supported yet by geckodriver/Marionette.

You can check below bugs for more information:-

https://github.com/mozilla/geckodriver/issues/93

https://bugzilla.mozilla.org/show_bug.cgi?id=1103196




回答5:


If you want to run the tests on Firefox with Selenium 3.0 set the Firefox driver capability “marionette” to false.

    @Test
public void test() {
    DesiredCapabilities d = new DesiredCapabilities();
    d.setCapability("marionette", false);
    WebDriver driver = new FirefoxDriver(d);
    driver.get("http://www.google.com");
    driver.quit();
}


来源:https://stackoverflow.com/questions/40467460/firefox-error-your-connection-is-not-secure-while-launching-driver-with-selen

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!