ChromeOptions createChromeOptions(Config config, Proxy proxy) { ChromeOptions options = new ChromeOptions(); options.setHeadless(config.headless()); if (!config.browserBinary().isEmpty()) { log.info("Using browser binary: " + config.browserBinary()); options.setBinary(config.browserBinary()); } options.merge(createCommonCapabilities(config, proxy)); options = transferChromeOptionsFromSystemProperties(options); log.config("Chrome options:" + options.toString()); return options; }
private Capabilities getHeadlessCapabilities(Config config, Browser browser) { log.info("Starting in headless mode"); if (browser.isChrome()) { ChromeOptions options = new ChromeOptions(); options.setHeadless(config.headless()); return options; } else if (browser.isFirefox()) { FirefoxOptions options = new FirefoxOptions(); options.setHeadless(config.headless()); return options; } else { log.warning("Headless mode on remote server is only supported for Chrome/Firefox, setting will be ignored."); } return new DesiredCapabilities(); }
public static DesiredCapabilities getBrowserCapabilities(String driverParameter, boolean headless) { DesiredCapabilities capabilities = null; if (driverParameter == null || driverParameter.equalsIgnoreCase(FIREFOX)) { capabilities = DesiredCapabilities.firefox(); FirefoxOptions options = new FirefoxOptions(); options.setHeadless(headless); capabilities.merge(options); } else if (driverParameter.equalsIgnoreCase(IE)) { capabilities = DesiredCapabilities.internetExplorer(); capabilities.setCapability(InternetExplorerDriver.INTRODUCE_FLAKINESS_BY_IGNORING_SECURITY_DOMAINS, true); capabilities.setCapability(InternetExplorerDriver.IE_ENSURE_CLEAN_SESSION, true); } else if (driverParameter.equalsIgnoreCase(CHROME)) { capabilities = DesiredCapabilities.chrome(); ChromeOptions options = new ChromeOptions(); options.setHeadless(headless); options.setExperimentalOption("excludeSwitches", Collections.singletonList("enable-automation")); capabilities.merge(options); } return capabilities; }
private ChromeOptions getChromeOptions(Locale locale) { String formattedLocale = locale.getCountry().isEmpty() ? locale.getLanguage() : locale.getLanguage() + "-" + locale.getCountry().toLowerCase(Locale.ROOT) + "," + locale.getLanguage(); ChromeOptions opts = new ChromeOptions(); HashMap<String, String> prefs = new HashMap<>(); prefs.put("intl.accept_languages", formattedLocale); opts.setExperimentalOption("prefs", prefs); LogManager.getLogger().info("is headless: {}", isHeadless()); opts.setHeadless(isHeadless()); opts.addArguments("--force-color-profile=srgb");//makes screenshots analyzable return opts; } }
private ChromeOptions getDefaultChromeOptions() { final String userAgent = getUserAgent(); final ChromeOptions options = new ChromeOptions(); options.addArguments("--test-type"); options.addArguments("--ignore-certificate-errors"); if ((userAgent != null) && (!userAgent.trim().isEmpty())) { options.addArguments("--user-agent=" + userAgent); } options.setHeadless(Boolean.parseBoolean(getLocalConfigProperty(ConfigProperty.BROWSER_RUN_HEADLESS))); return options; } }
/** * Задает options для запуска Chrome драйвера * options можно передавать, как системную переменную, например -Doptions=--load-extension=my-custom-extension * @return ChromeOptions */ private ChromeOptions getChromeDriverOptions(DesiredCapabilities capabilities) { log.info("---------------Chrome Driver---------------------"); ChromeOptions chromeOptions = !options[0].equals("") ? new ChromeOptions().addArguments(options) : new ChromeOptions(); chromeOptions.setCapability(CapabilityType.BROWSER_VERSION, loadSystemPropertyOrDefault(CapabilityType.BROWSER_VERSION, VERSION_LATEST)); chromeOptions.setHeadless(getHeadless()); chromeOptions.merge(capabilities); return chromeOptions; }
@Override public ChromeOptions getCapabilities() { ChromeOptions chromeOptions = new ChromeOptions(); // useful defaults chromeOptions.setCapability( "chrome.switches", Collections.singletonList("--no-default-browser-check")); chromeOptions.setCapability( "chrome.prefs", ImmutableMap.of("profile.password_manager_enabled", "false")); // Workaround Docker/Travis issue if (Boolean.parseBoolean(System.getenv("CHROME_NO_SANDBOX"))) { chromeOptions.addArguments("--no-sandbox"); } // Use Chrome's built in device emulators if (Property.DEVICE.isSpecified()) { chromeOptions.setExperimentalOption( "mobileEmulation", ImmutableMap.of("deviceName", Property.DEVICE.getValue())); } chromeOptions.setHeadless(Property.HEADLESS.getBoolean()); return chromeOptions; }
private WebDriver createWebDriver(DriverManagerType driverManagerType) throws IllegalArgumentException, WebDriverManagerException { switch (driverManagerType) { case CHROME: ChromeOptions chromeOptions = new ChromeOptions(); chromeOptions.setHeadless(true); chromeOptions.addArguments(jooUnitWebDriverBrowserArguments); getLog().info("Starting Chrome with " + jooUnitWebDriverBrowserArguments.size() + " arguments: " + String.join(" ", jooUnitWebDriverBrowserArguments)); return new ChromeDriver(chromeOptions); case FIREFOX: FirefoxOptions firefoxOptions = new FirefoxOptions(); firefoxOptions.setHeadless(true); firefoxOptions.addArguments(jooUnitWebDriverBrowserArguments); getLog().info("Starting Firefox with " + jooUnitWebDriverBrowserArguments.size() + " arguments: " + String.join(" ", jooUnitWebDriverBrowserArguments)); return new FirefoxDriver(firefoxOptions); case EDGE: return new EdgeDriver(); // no headless mode and no arguments yet :-( case IEXPLORER: return new InternetExplorerDriver(); // no headless mode and no arguments yet :-( case OPERA: return new OperaDriver(); // no headless mode and no arguments yet :-( } throw new IllegalArgumentException(); }
public static DesiredCapabilities getBrowserCapabilities(String driverParameter, boolean headless) { DesiredCapabilities capabilities = null; if (driverParameter == null || driverParameter.equalsIgnoreCase(FIREFOX)) { capabilities = DesiredCapabilities.firefox(); FirefoxOptions options = new FirefoxOptions(); options.setHeadless(headless); capabilities.merge(options); } else if (driverParameter.equalsIgnoreCase(IE)) { capabilities = DesiredCapabilities.internetExplorer(); capabilities.setCapability(InternetExplorerDriver.INTRODUCE_FLAKINESS_BY_IGNORING_SECURITY_DOMAINS, true); capabilities.setCapability(InternetExplorerDriver.IE_ENSURE_CLEAN_SESSION, true); } else if (driverParameter.equalsIgnoreCase(CHROME)) { capabilities = DesiredCapabilities.chrome(); ChromeOptions options = new ChromeOptions(); options.setHeadless(headless); options.setExperimentalOption("excludeSwitches", Collections.singletonList("enable-automation")); capabilities.merge(options); } return capabilities; }
private static WebDriver createChromeDriver(WebDriverConfiguration config) { WebDriverManager.getInstance(ChromeDriver.class).setup(); return new ChromeDriver(customizeCapabilities(new ChromeOptions().setHeadless(true), config)); } }
ChromeOptions options = new ChromeOptions(); if (driverOptions.has(HEADLESS)) options.setHeadless(driverOptions.getBoolean(HEADLESS)); Proxy proxy = newProxy(driverOptions); if (proxy != null)
private WebDriver getChromeWebDriver() { if (Boolean.parseBoolean(System.getenv(CIProperties.IS_TRAVIS))) { ChromeOptions chromeOptions = new ChromeOptions(); chromeOptions.setBinary("/usr/bin/google-chrome-stable"); chromeOptions.setHeadless(true); chromeOptions.setCapability(SUPPORTS_JAVASCRIPT, true); return new ChromeDriver(chromeOptions); } else { return new ChromeDriver(); } }
private WebDriver getChromeWebDriver() { if (Boolean.parseBoolean(System.getenv(CIProperties.IS_TRAVIS))) { ChromeOptions chromeOptions = new ChromeOptions(); chromeOptions.setBinary("/usr/bin/google-chrome-stable"); chromeOptions.setHeadless(true); chromeOptions.addArguments("--no-sandbox"); chromeOptions.setCapability(SUPPORTS_JAVASCRIPT, true); return new ChromeDriver(chromeOptions); } else { return new ChromeDriver(); } }
private WebDriver newDriverForTest() { final ChromeOptions theOptions = new ChromeOptions().setHeadless(true); theOptions.addArguments("--js-flags=experimental-wasm-eh"); theOptions.addArguments("--enable-experimental-wasm-eh"); final LoggingPreferences theLoggingPreferences = new LoggingPreferences(); theLoggingPreferences.enable(LogType.BROWSER, Level.ALL); theOptions.setCapability(CapabilityType.LOGGING_PREFS, theLoggingPreferences); final DesiredCapabilities theCapabilities = DesiredCapabilities.chrome(); theCapabilities.setCapability(ChromeOptions.CAPABILITY, theOptions); return new RemoteWebDriver(DRIVERSERVICE.getUrl(), theCapabilities); }
private WebDriver newDriverForTest() { final ChromeOptions theOptions = new ChromeOptions().setHeadless(true); theOptions.addArguments("--js-flags=experimental-wasm-eh"); theOptions.addArguments("--enable-experimental-wasm-eh"); final LoggingPreferences theLoggingPreferences = new LoggingPreferences(); theLoggingPreferences.enable(LogType.BROWSER, Level.ALL); theOptions.setCapability(CapabilityType.LOGGING_PREFS, theLoggingPreferences); final DesiredCapabilities theCapabilities = DesiredCapabilities.chrome(); theCapabilities.setCapability(ChromeOptions.CAPABILITY, theOptions); return new RemoteWebDriver(DRIVERSERVICE.getUrl(), theCapabilities); }
} else if ("Chrome".equalsIgnoreCase(this.browserType)) { ChromeOptions chromeOptions = new ChromeOptions(); chromeOptions.setHeadless(isHeadless()); if (isProfilePathSet()) { Path path = Paths.get(profilePath);
options.setHeadless(drHeadless);
chromeOptions.addArguments("test-type=webdriver"); chromeOptions.addArguments("use-mock-keychain"); chromeOptions.setHeadless(BROWSER_HEADLESS);
options.setHeadless(true); options.addArguments("--window-size=" + width + "," + jobConfig.windowHeight);