I have recently updated my selenium framework to work with WebDriver manager. Previously, I was manually setting up the chromedrivers/ gecko driver versions as per my use. I am facing this error when I try to run my test in CICD pipeline (GitLab runners).
Test works fine manually (my machine/ VM) but it throws error when I execute it via CICD.
String browser = new PropertyReader().readProperty("browserType");
String browserMode = new PropertyReader().readProperty("browserMode");
WebDriverManager.chromedriver().setup();
if (browser.equalsIgnoreCase("chrome")) {
Map<String, Object> prefs = new HashMap<String, Object>();
prefs.put("plugins.plugins_disabled", new String[]{"Chrome PDF Viewer"});
prefs.put("profile.default_content_setting_values.notifications", 2);
prefs.put("download.directory_upgrade", true);
prefs.put("download.prompt_for_download", false);
ChromeOptions options = new ChromeOptions();
options.setExperimentalOption("excludeSwitches", new String[] { "enable-automation" });
options.addArguments("--disable-extensions");
options.addArguments("--no-sandbox");
options.addArguments("--disable-dev-shm-usage");
options.addArguments(browserMode);
options.addArguments("disable-infobars");
options.setExperimentalOption("prefs", prefs);
options.addArguments("--ignore-certificate-errors");
options.addArguments("--remote-allow-origins=*");
driver = new ChromeDriver(options);
driver.manage().window().maximize();
driverThreadLocal.set(driver);
BrowserMode is set to "--headless" and browser is chrome from config properties.