selenium webdriver三种浏览器如何处理不受信任的证书

Hello, Welcome to Selenium tutorial in this post we will see how to Handle Untrusted Certificate Selenium.

 

  • What is Untrusted SSL certificate? Whenever We try to access HTTPS website or application so many time you will face  untrusted SSL certificate issue. This issue comes in all browser like IE,Chrome,Safari, Firefox etc.

Handle Untrusted Certificate Selenium

2-       Why we get this certificate issues often?

 

 

This certificates some in multiple conditions and we should know all of them so that we can rectify them easily.

1- Each secure site has Certificate so its certificate is not valid up-to-date.

2– Certificate has been expired on date

3– Certificate is only valid for (site name) 


4- 
The certificate is not trusted because the issuer certificate is unknown due to many reasons.

 

Handle Untrusted Certificate Selenium

Step 1-We have to create FirefoxProfile in Selenium.

Step 2- We have some predefined method in Selenium called setAcceptUntrustedCertificates() which accept Boolean values(true/false)- so we will make it true.

Step 3-Open Firefox browser with the above-created profile.

 

I have published video on the same.

 

 

Handle untrusted certificate in Firefox

import org.openqa.selenium.WebDriver;
import org.openqa.selenium.firefox.FirefoxDriver;
import org.openqa.selenium.firefox.FirefoxProfile;
 
public class SSLCertificate {
 
public static void main(String[] args) {
 
//It create firefox profile
FirefoxProfile profile=new FirefoxProfile();
 
// This will set the true value
profile.setAcceptUntrustedCertificates(true);
 
// This will open  firefox browser using above created profile
WebDriver driver=new FirefoxDriver(profile);
 
driver.get("pass the url as per your requirement");
 
 
}
 
}

 

 

 

Since Firefox comes default browser in Selenium so for other browsers like Chrome, IE, Safari we have to use below technique.

Handle untrusted certificate in Chrome

// Create object of DesiredCapabilities class
DesiredCapabilities cap=DesiredCapabilities.chrome();
 
// Set ACCEPT_SSL_CERTS  variable to true
cap.setCapability(CapabilityType.ACCEPT_SSL_CERTS, true);
 
// Set the driver path
System.setProperty("webdriver.chrome.driver","Chrome driver path");
 
// Open browser with capability
WebDriver driver=new ChromeDriver(cap);

 

 

 

Handle untrusted certificate in IE

 

// Create object of DesiredCapabilities class
 
DesiredCapabilities cap=DesiredCapabilities.internetExplorer();
 
// Set ACCEPT_SSL_CERTS  variable to true
cap.setCapability(CapabilityType.ACCEPT_SSL_CERTS, true);
 
// Set the driver path
System.setProperty("webdriver.ie.driver","IE driver path");
 
// Open browser with capability
WebDriver driver=newInternetExplorerDriver(cap);
View Code

 

 

  Handle untrusted certificate in Safari

// Create object of DesiredCapabilities class
 
DesiredCapabilities cap=DesiredCapabilities.safari();
 
// Set ACCEPT_SSL_CERTS  variable to true
cap.setCapability(CapabilityType.ACCEPT_SSL_CERTS, true);
 
// Set the driver path
System.setProperty("webdriver.safari.driver","Safari driver path");
 
// Open browser with capability
WebDriver driver=new SafariDriver(cap);
View Code

 

 

I would suggest you add above code in Base Class in Selenium Webdriver so you don’t have to write code again and again.

I have implemented in my office project and found good results.

Thanks for visiting my blog. Please comment below if you finding any issue.

Keep in touch. Have a nice day :)

posted @ 2017-11-02 09:12  白灰  阅读(5097)  评论(0编辑  收藏  举报