Example usage for org.openqa.selenium.firefox FirefoxOptions setHeadless

List of usage examples for org.openqa.selenium.firefox FirefoxOptions setHeadless

Introduction

In this page you can find the example usage for org.openqa.selenium.firefox FirefoxOptions setHeadless.

Prototype

public FirefoxOptions setHeadless(boolean headless) 

Source Link

Usage

From source file:br.com.esign.logistics.test.selenium.UITest.java

License:Open Source License

/**
 * Starts the driver and opens the homepage.
 *//*from   w ww .  j a  va  2  s .  co  m*/
@BeforeClass
public static void setup() {
    FirefoxOptions options = new FirefoxOptions();
    options.setHeadless(Boolean.getBoolean("headless"));
    driver = new FirefoxDriver(options);
    driver.manage().timeouts().implicitlyWait(10, TimeUnit.SECONDS);

    home = new HomePage(driver);
}

From source file:de.learnlib.alex.learning.entities.webdrivers.RemoteDriverConfig.java

License:Apache License

@Override
public WebDriver createDriver() throws Exception {
    final URL remoteURL = new URL(System.getProperty("webdriver.remote.url"));

    final DesiredCapabilities capabilities = new DesiredCapabilities();
    capabilities.setPlatform(platform);//from w  ww  .  java 2  s . c  o m
    capabilities.setBrowserName(browser);

    switch (browser) {
    case "chrome":
        final ChromeOptions chromeOptions = new ChromeOptions();
        chromeOptions.setHeadless(headless);
        capabilities.merge(chromeOptions);
        break;
    case "firefox":
        final FirefoxOptions firefoxOptions = new FirefoxOptions();
        firefoxOptions.setHeadless(headless);
        capabilities.merge(firefoxOptions);
        break;
    default:
        break;
    }

    if (!version.trim().equals("")) {
        capabilities.setVersion(version);
    }

    final WebDriver driver = new RemoteWebDriver(remoteURL, capabilities);
    manage(driver);
    return driver;
}

From source file:endtoend.browser.driver.builders.FirefoxDriverBuilderTest.java

License:Apache License

@Test
public void withOptions() {
    // when/*from  w w w  .ja v a2  s. c  o m*/
    FirefoxOptions firefoxOptions = new FirefoxOptions();
    firefoxOptions.setHeadless(true);
    FirefoxBinary firefoxBinary = new FirefoxBinary();
    $.driver().useFirefox().withOptions(firefoxOptions).withBinary(firefoxBinary).autoDriverDownload();
    // then
    HeadlessTestUtils.assertHeadlessYes($.driver().get());
}

From source file:javax.portlet.tck.driver.TCKSimpleTestDriver.java

License:Apache License

/**
 * @throws java.lang.Exception/* w  w  w .  ja va2s.  c  o  m*/
 */
@BeforeClass
public static void setUpBeforeClass() throws Exception {

    loginUrl = System.getProperty("test.server.login.url");
    host = System.getProperty("test.server.host");
    port = System.getProperty("test.server.port");
    username = System.getProperty("test.server.username");
    usernameId = System.getProperty("test.server.username.id");
    password = System.getProperty("test.server.password");
    passwordId = System.getProperty("test.server.password.id");
    browser = System.getProperty("test.browser");
    testContextBase = System.getProperty("test.context.base");
    String str = System.getProperty("test.url.strategy");
    useGeneratedUrl = str.equalsIgnoreCase("generateURLs");
    str = System.getProperty("test.debug");
    debug = str.equalsIgnoreCase("true");
    str = System.getProperty("test.timeout");
    dryrun = new Boolean(System.getProperty("test.dryrun"));
    timeout = ((str != null) && str.matches("\\d+")) ? Integer.parseInt(str) : 3;
    String wd = System.getProperty("test.browser.webDriver");
    String binary = System.getProperty("test.browser.binary");
    boolean browserDefaultHeadless = browser.equalsIgnoreCase("chrome") || browser.equalsIgnoreCase("firefox")
            || browser.equalsIgnoreCase("htmlunit") || browser.equalsIgnoreCase("phantomjs");
    String headlessProperty = System.getProperty("test.browser.headless");
    boolean headless = (((headlessProperty == null) || (headlessProperty.length() == 0))
            && browserDefaultHeadless);

    System.out.println("before class.");
    System.out.println("   Debug        =" + debug);
    System.out.println("   Dryrun       =" + dryrun);
    System.out.println("   Timeout      =" + timeout);
    System.out.println("   Login URL    =" + loginUrl);
    System.out.println("   Host         =" + host);
    System.out.println("   Port         =" + port);
    System.out.println("   Context      =" + testContextBase);
    System.out.println("   Generate URL =" + useGeneratedUrl);
    System.out.println("   Username     =" + username);
    System.out.println("   UsernameId   =" + usernameId);
    System.out.println("   Password     =" + password);
    System.out.println("   PasswordId   =" + passwordId);
    System.out.println("   Browser      =" + browser);
    System.out.println("   Driver       =" + wd);
    System.out.println("   binary       =" + binary);
    System.out.println("   headless     =" + headless);

    if (browser.equalsIgnoreCase("firefox")) {

        System.setProperty("webdriver.gecko.driver", wd);
        FirefoxOptions options = new FirefoxOptions();
        options.setLegacy(true);
        options.setAcceptInsecureCerts(true);

        if ((binary != null) && (binary.length() != 0)) {
            options.setBinary(binary);
        }

        if (headless) {
            options.setHeadless(true);
        }

        driver = new FirefoxDriver(options);

    } else if (browser.equalsIgnoreCase("internetExplorer")) {
        System.setProperty("webdriver.ie.driver", wd);
        driver = new InternetExplorerDriver();
    } else if (browser.equalsIgnoreCase("chrome")) {

        System.setProperty("webdriver.chrome.driver", wd);
        ChromeOptions options = new ChromeOptions();

        if ((binary != null) && (binary.length() > 0)) {
            options.setBinary(binary);
        }

        if (headless) {
            options.addArguments("--headless");
        }

        options.addArguments("--disable-infobars");
        options.setAcceptInsecureCerts(true);

        driver = new ChromeDriver(options);

    } else if (browser.equalsIgnoreCase("phantomjs")) {
        DesiredCapabilities capabilities = DesiredCapabilities.phantomjs();
        capabilities.setJavascriptEnabled(true);
        capabilities.setCapability(PhantomJSDriverService.PHANTOMJS_EXECUTABLE_PATH_PROPERTY, binary);
        driver = new PhantomJSDriver(capabilities);
    } else if (browser.equalsIgnoreCase("htmlUnit")) {
        driver = new HtmlUnitDriver(true);
    } else if (browser.equalsIgnoreCase("safari")) {
        driver = new SafariDriver();
    } else {
        throw new Exception("Unsupported browser: " + browser);
    }

    if (!dryrun) {
        login();
    }

}

From source file:org.apache.nutch.protocol.selenium.HttpWebClient.java

License:Apache License

public static RemoteWebDriver createFirefoxRemoteWebDriver(URL seleniumHubUrl, boolean enableHeadlessMode) {
    FirefoxOptions firefoxOptions = new FirefoxOptions();
    if (enableHeadlessMode) {
        firefoxOptions.setHeadless(true);
    }// w  ww .  j a va2s.c  o  m
    RemoteWebDriver driver = new RemoteWebDriver(seleniumHubUrl, firefoxOptions);
    return driver;
}

From source file:org.apache.portals.pluto.test.utilities.SimpleTestDriver.java

License:Apache License

/**
 * @throws java.lang.Exception//from  ww  w .  ja  va 2s  .  com
 */
@BeforeClass
public static void setUpBeforeClass() throws Exception {

    if (driver == null) {
        loginUrl = System.getProperty("test.server.login.url");
        host = System.getProperty("test.server.host");
        port = System.getProperty("test.server.port");
        username = System.getProperty("test.server.username");
        usernameId = System.getProperty("test.server.username.id");
        password = System.getProperty("test.server.password");
        passwordId = System.getProperty("test.server.password.id");
        browser = System.getProperty("test.browser");
        testContextBase = System.getProperty("test.context.base");
        StringBuilder sb = new StringBuilder();
        sb.append("http://");
        sb.append(host);
        if (port != null && !port.isEmpty()) {
            sb.append(":");
            sb.append(port);
        }
        sb.append("/");
        sb.append(testContextBase);
        baseUrl = sb.toString();
        String str = System.getProperty("test.url.strategy");
        useGeneratedUrl = str.equalsIgnoreCase("generateURLs");
        str = System.getProperty("test.debug");
        debug = str.equalsIgnoreCase("true");
        str = System.getProperty("test.timeout");
        dryrun = Boolean.valueOf(System.getProperty("test.dryrun"));
        timeout = ((str != null) && str.matches("\\d+")) ? Integer.parseInt(str) : 3;
        String wd = System.getProperty("test.browser.webDriver");
        String binary = System.getProperty("test.browser.binary");
        String headlessProperty = System.getProperty("test.browser.headless");
        boolean headless = (((headlessProperty == null) || (headlessProperty.length() == 0)
                || Boolean.valueOf(headlessProperty)));
        String maximizedProperty = System.getProperty("test.browser.maximized");
        boolean maximized = Boolean.valueOf(maximizedProperty);

        System.out.println("before class.");
        System.out.println("   Debug        =" + debug);
        System.out.println("   Dryrun       =" + dryrun);
        System.out.println("   Timeout      =" + timeout);
        System.out.println("   Login URL    =" + loginUrl);
        System.out.println("   Host         =" + host);
        System.out.println("   Port         =" + port);
        System.out.println("   Context      =" + testContextBase);
        System.out.println("   Generate URL =" + useGeneratedUrl);
        System.out.println("   Username     =" + username);
        System.out.println("   UsernameId   =" + usernameId);
        System.out.println("   Password     =" + password);
        System.out.println("   PasswordId   =" + passwordId);
        System.out.println("   Browser      =" + browser);
        System.out.println("   Driver       =" + wd);
        System.out.println("   binary       =" + binary);
        System.out.println("   headless     =" + headless);
        System.out.println("   maximized    =" + maximized);

        if (browser.equalsIgnoreCase("firefox")) {

            System.setProperty("webdriver.gecko.driver", wd);
            FirefoxOptions options = new FirefoxOptions();
            options.setLegacy(true);
            options.setAcceptInsecureCerts(true);

            if ((binary != null) && (binary.length() != 0)) {
                options.setBinary(binary);
            }

            if (headless) {
                options.setHeadless(true);
            }

            driver = new FirefoxDriver(options);

        } else if (browser.equalsIgnoreCase("internetExplorer")) {
            System.setProperty("webdriver.ie.driver", wd);
            driver = new InternetExplorerDriver();
        } else if (browser.equalsIgnoreCase("chrome")) {

            System.setProperty("webdriver.chrome.driver", wd);
            ChromeOptions options = new ChromeOptions();

            if ((binary != null) && (binary.length() > 0)) {
                options.setBinary(binary);
            }

            if (headless) {
                options.addArguments("--headless");
            }

            options.addArguments("--disable-infobars");
            options.setAcceptInsecureCerts(true);

            if (maximized) {
                // The webDriver.manage().window().maximize() feature does not work correctly in headless mode, so set the
                // window size to 1920x1200 (resolution of a 15.4 inch screen).
                options.addArguments("--window-size=1920,1200");
            }

            driver = new ChromeDriver(options);

        } else if (browser.equalsIgnoreCase("phantomjs")) {
            DesiredCapabilities capabilities = DesiredCapabilities.phantomjs();
            capabilities.setJavascriptEnabled(true);
            capabilities.setCapability(PhantomJSDriverService.PHANTOMJS_EXECUTABLE_PATH_PROPERTY, binary);
            driver = new PhantomJSDriver(capabilities);
        } else if (browser.equalsIgnoreCase("htmlUnit")) {
            LogFactory.getFactory().setAttribute("org.apache.commons.logging.Log",
                    "org.apache.commons.logging.impl.NoOpLog");
            Logger.getLogger("com.gargoylesoftware").setLevel(Level.SEVERE);
            Logger.getLogger("org.apache.commons.httpclient").setLevel(Level.SEVERE);
            driver = new HtmlUnitDriver() {
                @Override
                protected WebClient getWebClient() {
                    WebClient webClient = super.getWebClient();
                    WebClientOptions options = webClient.getOptions();
                    options.setThrowExceptionOnFailingStatusCode(false);
                    options.setThrowExceptionOnScriptError(false);
                    options.setPrintContentOnFailingStatusCode(false);
                    webClient.setCssErrorHandler(new SilentCssErrorHandler());
                    return webClient;
                }
            };
        } else if (browser.equalsIgnoreCase("safari")) {
            driver = new SafariDriver();
        } else {
            throw new Exception("Unsupported browser: " + browser);
        }

        Runtime.getRuntime().addShutdownHook(new Thread(new Runnable() {
            @Override
            public void run() {
                driver.quit();
            }
        }));

        if (maximized) {
            driver.manage().window().maximize();
        }

        if (!dryrun) {
            login();
        }
    }
}

From source file:org.structr.web.frontend.selenium.SeleniumTest.java

License:Open Source License

@Before
public void startDriver() {

    switch (activeBrowser) {

    case FIREFOX:

        System.setProperty("webdriver.gecko.driver", getBrowserDriverLocation(activeBrowser));

        final FirefoxOptions firefoxOptions = new FirefoxOptions();
        firefoxOptions.setHeadless(true);

        driver = new FirefoxDriver(firefoxOptions);

        break;//from w  ww .  j  ava2 s  .co m

    case CHROME:

        System.setProperty("webdriver.chrome.driver", getBrowserDriverLocation(activeBrowser));
        System.setProperty("webdriver.chrome.logfile", "/tmp/chromedriver.log");
        System.setProperty("webdriver.chrome.verboseLogging", "true");

        final ChromeOptions chromeOptions = new ChromeOptions();
        chromeOptions.setHeadless(true);

        driver = new ChromeDriver(chromeOptions);

        break;

    case NONE:

        // Don't create a driver in main thread, useful for parallel testing
        break;
    }
}