EN
Selenium - accept untrusted certificates in Google Chrome Browser with Java
4
points
In this short article, I would like to show how to accept by Google Chrome Browser untrusted certificates and use them with Selenium in Java.
There are 3 solutions:
- use trusted certificate or use certificate manager to add it to proper store,
- write a tool that confirms certificate before property testing,
- use
setAcceptInsecureCerts
method and ignore these warnings.
In this article, we use 3rd solution.
The solution is useful when written e2e tests with Selenium use HTTPS protocol and certificate is untrusted (e.g. was generated by yourself, expired, etc.).
Quick solution:
ChromeOptions options = new ChromeOptions();
// add following flag
options.setAcceptInsecureCerts(true);
Practical example
package logic.selenium;
import org.openqa.selenium.WebDriver;
import org.openqa.selenium.chrome.ChromeDriver;
import org.openqa.selenium.chrome.ChromeOptions;
public class SeleniumUtil {
public static WebDriver createWebDriver() {
System.setProperty("webdriver.chrome.driver", "C:\\Projects\\tools\\chromedriver.exe");
ChromeOptions options = new ChromeOptions();
options.setBinary("C:\\Program Files (x86)\\Google\\Chrome\\Application\\chrome.exe");
options.setHeadless(false);
options.setAcceptInsecureCerts(true);
options.addArguments("--window-position=100,30");
options.addArguments("--window-size=1700,1000");
// options.addArguments("--start-maximized");
options.addArguments("--disable-extensions");
options.addArguments("--disable-gpu");
options.addArguments("--no-sandbox");
return new ChromeDriver(options);
}
}