Example usage for org.openqa.selenium.firefox FirefoxDriver PROFILE

List of usage examples for org.openqa.selenium.firefox FirefoxDriver PROFILE

Introduction

In this page you can find the example usage for org.openqa.selenium.firefox FirefoxDriver PROFILE.

Prototype

String PROFILE

To view the source code for org.openqa.selenium.firefox FirefoxDriver PROFILE.

Click Source Link

Usage

From source file:com.consol.citrus.selenium.endpoint.SeleniumBrowser.java

License:Apache License

/**
 * Creates remote web driver.//from   w ww .j  a  va 2s .  co m
 * @param browserType
 * @param serverAddress
 * @return
 * @throws MalformedURLException
 */
private RemoteWebDriver createRemoteWebDriver(String browserType, String serverAddress) {
    try {
        switch (browserType) {
        case BrowserType.FIREFOX:
            DesiredCapabilities defaultsFF = DesiredCapabilities.firefox();
            defaultsFF.setCapability(FirefoxDriver.PROFILE, getEndpointConfiguration().getFirefoxProfile());
            return new RemoteWebDriver(new URL(serverAddress), defaultsFF);
        case BrowserType.IE:
            DesiredCapabilities defaultsIE = DesiredCapabilities.internetExplorer();
            defaultsIE.setCapability(CapabilityType.ACCEPT_SSL_CERTS, true);
            return new RemoteWebDriver(new URL(serverAddress), defaultsIE);
        case BrowserType.CHROME:
            DesiredCapabilities defaultsChrome = DesiredCapabilities.chrome();
            defaultsChrome.setCapability(CapabilityType.ACCEPT_SSL_CERTS, true);
            return new RemoteWebDriver(new URL(serverAddress), defaultsChrome);
        case BrowserType.GOOGLECHROME:
            DesiredCapabilities defaultsGoogleChrome = DesiredCapabilities.chrome();
            defaultsGoogleChrome.setCapability(CapabilityType.ACCEPT_SSL_CERTS, true);
            return new RemoteWebDriver(new URL(serverAddress), defaultsGoogleChrome);
        default:
            throw new CitrusRuntimeException("Unsupported remote browser type: " + browserType);
        }
    } catch (MalformedURLException e) {
        throw new CitrusRuntimeException("Failed to access remote server", e);
    }
}

From source file:com.dhenton9000.selenium.generic.GenericAutomationRepository.java

/**
 * set up the driver with configuration parameters
 *
 *///from   www .  j av  a2  s .c  o m
private void configureDriver() {

    LoggingPreferences logs = new LoggingPreferences();
    logs.enable(LogType.BROWSER, Level.SEVERE);
    logs.enable(LogType.CLIENT, Level.SEVERE);
    logs.enable(LogType.DRIVER, Level.SEVERE);
    logs.enable(LogType.PERFORMANCE, Level.SEVERE);
    logs.enable(LogType.PROFILER, Level.SEVERE);
    logs.enable(LogType.SERVER, Level.SEVERE);

    String driverTypeString = this.config.getString("test.selenium.browser");
    if (driverTypeString == null) {
        throw new RuntimeException("must specify 'test.selenium.browser' in prop file");
    }

    DRIVER_TYPES driverType = DRIVER_TYPES.valueOf(driverTypeString);
    LOG.debug(" found driver type " + driverType.toString());
    if (driverType == null) {
        throw new RuntimeException("cannot find driver type of " + driverTypeString);
    }

    switch (driverType) {
    case FireFox:
    default:
        DesiredCapabilities desiredCapabilities = DesiredCapabilities.firefox();
        desiredCapabilities.setCapability(CapabilityType.LOGGING_PREFS, logs);

        // sets the driver to automatically skip download dialog
        // and save csv,xcel files to a temp directory
        // that directory is set in the constructor and has a trailing
        // slash
        FirefoxProfile firefoxProfile = new FirefoxProfile();
        firefoxProfile.setPreference("browser.download.folderList", 2);
        firefoxProfile.setPreference("browser.download.manager.showWhenStarting", false);

        String target = this.getTempDownloadPath();
        firefoxProfile.setPreference("browser.download.dir", target);
        firefoxProfile.setPreference("browser.helperApps.neverAsk.saveToDisk",
                "text/csv,application/vnd.ms-excel");

        desiredCapabilities.setCapability(FirefoxDriver.PROFILE, firefoxProfile);

        LOG.debug("creating firefox driver");
        driver = new FirefoxDriver(desiredCapabilities);
        LOG.debug("got firefox driver");
        break;
    case InternetExplorer:
        break;
    case Opera:
        break;
    case Safari:
        break;
    case Chrome:
        break;

    }
    driver.manage().timeouts().implicitlyWait(2, TimeUnit.SECONDS);
    LOG.debug("driver is loaded via config " + driver.toString());

}

From source file:com.elastica.browserfactory.FirefoxCapabilitiesFactory.java

License:Apache License

/**
 * Create firefox capabilities./*w w w  .  j a  v a  2s .  c  o m*/
 */
public DesiredCapabilities createCapabilities(final DriverConfig webDriverConfig) {
    DesiredCapabilities capability;
    capability = new DesiredCapabilities();
    capability.setBrowserName(DesiredCapabilities.firefox().getBrowserName());

    FirefoxProfile profile = getFirefoxProfile(webDriverConfig);
    configProfile(profile, webDriverConfig);
    capability.setCapability(FirefoxDriver.PROFILE, profile);

    if (webDriverConfig.isEnableJavascript()) {
        capability.setJavascriptEnabled(true);
    } else {
        capability.setJavascriptEnabled(false);
    }

    capability.setCapability(CapabilityType.TAKES_SCREENSHOT, true);
    capability.setCapability(CapabilityType.ACCEPT_SSL_CERTS, true);

    if (webDriverConfig.getBrowserVersion() != null) {
        capability.setVersion(webDriverConfig.getBrowserVersion());
    }

    if (webDriverConfig.getPlatform() != null) {
        capability.setPlatform(webDriverConfig.getPlatform());
    }

    if (webDriverConfig.getProxyHost() != null) {
        capability.setCapability(CapabilityType.PROXY, webDriverConfig.getProxy());
    }

    return capability;
}

From source file:com.expedia.lux.accountsettingstest.core.CreateWebDriverHelper.java

License:Open Source License

/**
 * Create webdriver entry//from   ww  w  .  j ava  2  s.  c om
 * 
 * @param testName
 * @param browserType
 *            1 is chrome, 2 is firefox, 0 is internet explorer, 3 is safari
 * @param logging
 * @return
 */
public static WebDriver createWebDriver(String testName, String testBrowser) {
    WebDriver driver = null;
    String isCloud = String.valueOf(isRemoteTest);

    if (!isRemoteTest) {
        DesiredCapabilities capabillities = new DesiredCapabilities();
        capabillities.setCapability(CapabilityType.SUPPORTS_WEB_STORAGE, false);
        switch (testBrowser.toUpperCase()) {
        case "IE":
            // Need set iedriver.exe file path
            System.setProperty("webdriver.ie.driver", ieDriverPath);
            driver = new InternetExplorerDriver(capabillities);
            break;
        case "FF":
            // TODO: Not stable
            capabillities.setCapability(FirefoxDriver.BINARY, new FirefoxBinary(new File(firefoxPath)));
            FirefoxProfile profile = new FirefoxProfile();
            profile.setAcceptUntrustedCertificates(true);
            capabillities.setCapability(FirefoxDriver.PROFILE, profile);
            driver = new FirefoxDriver(capabillities);
            break;
        case "SF":
            // TODO: No one's machine has safari installed in SZ
            driver = new SafariDriver(capabillities);
            break;
        default:
            // Need set the chromedriver.exe file path.
            System.setProperty("webdriver.chrome.driver", chromeDriverPath);
            driver = new ChromeDriver(capabillities);
            break;
        }
    } else {
        DesiredCapabilities capabillities;
        switch (testBrowser.toUpperCase()) {
        case "IE9":
            capabillities = DesiredCapabilities.internetExplorer();
            capabillities.setCapability(CapabilityType.VERSION, "9");
            break;
        case "FF":
            capabillities = DesiredCapabilities.firefox();
            break;
        case "SF":
            capabillities = DesiredCapabilities.safari();
            capabillities.setCapability("platform", "OS X 10.6");
            capabillities.setCapability("version", "5");
            capabillities.setCapability("disable-popup-handler", true);
            break;
        case "IE7":
            capabillities = DesiredCapabilities.internetExplorer();
            capabillities.setCapability(CapabilityType.VERSION, "7");
            break;
        case "IE8":
            capabillities = DesiredCapabilities.internetExplorer();
            capabillities.setCapability(CapabilityType.VERSION, "8");
            break;
        case "IE10":
            capabillities = DesiredCapabilities.internetExplorer();
            capabillities.setCapability(CapabilityType.VERSION, "10");
            break;
        case "IE11":
            capabillities = DesiredCapabilities.internetExplorer();
            capabillities.setCapability("version", "11");
            break;
        case "OP":
            capabillities = DesiredCapabilities.opera();
            capabillities.setCapability("version", "12");
            break;
        //Note: may not support HTTPS via sauceConnect with mobile platform yet
        case "IOS":
            capabillities = DesiredCapabilities.iphone();
            capabillities.setCapability("version", "6.1");
            capabillities.setCapability("platform", "OS X 10.8");
            capabillities.setCapability("device-orientation", "portrait");
            capabillities.setCapability("disable-popup-handler", true);
            break;
        case "AND":
            capabillities = DesiredCapabilities.android();
            capabillities.setCapability("version", "4.0");
            capabillities.setCapability("platform", "Linux");
            capabillities.setCapability("device-type", "tablet");
            capabillities.setCapability("device-orientation", "portrait");
            break;
        case "SAUCE":
            return createWebDriverSaucelab(testName + " (SauceLabs)");
        default:
            capabillities = DesiredCapabilities.chrome();
            capabillities.setBrowserName("chrome");
            break;
        }

        try {
            driver = new RemoteWebDriver(new URL("http://10.208.52.16:5555/wd/hub"), capabillities);
        } catch (MalformedURLException e) {
            // TODO Auto-generated catch block
            e.printStackTrace();
        }
    }

    fillBrowserName(testBrowser, isCloud);
    return driver;
}

From source file:com.fullteaching.backend.e2e.FirefoxUser.java

License:Apache License

public FirefoxUser(String userName, int timeOfWaitInSeconds) {
    super(userName, timeOfWaitInSeconds);

    DesiredCapabilities capabilities = new DesiredCapabilities();
    capabilities.setCapability("acceptInsecureCerts", true);
    FirefoxProfile profile = new FirefoxProfile();

    // This flag avoids granting the access to the camera
    profile.setPreference("media.navigator.permission.disabled", true);
    // This flag force to use fake user media (synthetic video of multiple color)
    profile.setPreference("media.navigator.streams.fake", true);

    capabilities.setCapability(FirefoxDriver.PROFILE, profile);

    String eusApiURL = System.getenv("ET_EUS_API");

    if (eusApiURL == null) {
        this.driver = new FirefoxDriver(capabilities);
    } else {/*from  w  ww.ja  va 2s . c  om*/
        try {
            capabilities.setBrowserName("firefox");

            this.driver = new RemoteWebDriver(new URL(eusApiURL), capabilities);

        } catch (MalformedURLException e) {
            throw new RuntimeException("Exception creaing eusApiURL", e);
        }
    }

    this.driver.manage().timeouts().setScriptTimeout(this.timeOfWaitInSeconds, TimeUnit.SECONDS);

    this.configureDriver();
}

From source file:com.kurento.kmf.test.client.BrowserClient.java

License:Open Source License

private void initDriver(String hostAddress) {
    Class<? extends WebDriver> driverClass = browser.getDriverClass();
    int hubPort = getProperty("test.hub.port", GridBrowserMediaApiTest.DEFAULT_HUB_PORT);

    try {/*  ww  w  . j a  va  2  s  .  com*/
        if (driverClass.equals(FirefoxDriver.class)) {
            FirefoxProfile profile = new FirefoxProfile();
            // This flag avoids granting the access to the camera
            profile.setPreference("media.navigator.permission.disabled", true);
            if (remoteNode != null) {
                DesiredCapabilities capabilities = new DesiredCapabilities();
                capabilities.setCapability(FirefoxDriver.PROFILE, profile);
                capabilities.setBrowserName(DesiredCapabilities.firefox().getBrowserName());

                driver = new RemoteWebDriver(new URL("http://" + hostAddress + ":" + hubPort + "/wd/hub"),
                        capabilities);
            } else {
                driver = new FirefoxDriver(profile);
            }

            if (!usePhysicalCam && video != null) {
                launchFakeCam();
            }

        } else if (driverClass.equals(ChromeDriver.class)) {
            String chromedriver = null;
            if (SystemUtils.IS_OS_MAC || SystemUtils.IS_OS_LINUX) {
                chromedriver = "chromedriver";
            } else if (SystemUtils.IS_OS_WINDOWS) {
                chromedriver = "chromedriver.exe";
            }
            System.setProperty("webdriver.chrome.driver",
                    new File("target/webdriver/" + chromedriver).getAbsolutePath());
            ChromeOptions options = new ChromeOptions();

            // This flag avoids grant the camera
            options.addArguments("--use-fake-ui-for-media-stream");

            // This flag avoids warning in chrome. See:
            // https://code.google.com/p/chromedriver/issues/detail?id=799
            options.addArguments("--test-type");

            if (!usePhysicalCam) {
                // This flag makes using a synthetic video (green with
                // spinner) in webrtc. Or it is needed to combine with
                // use-file-for-fake-video-capture to use a file faking the
                // cam
                options.addArguments("--use-fake-device-for-media-stream");

                if (video != null) {
                    options.addArguments("--use-file-for-fake-video-capture=" + video);

                    // Alternative: lauch fake cam also in Chrome
                    // launchFakeCam();
                }
            }

            if (remoteNode != null) {
                DesiredCapabilities capabilities = new DesiredCapabilities();
                capabilities.setCapability(ChromeOptions.CAPABILITY, options);
                capabilities.setBrowserName(DesiredCapabilities.chrome().getBrowserName());
                driver = new RemoteWebDriver(new URL("http://" + hostAddress + ":" + hubPort + "/wd/hub"),
                        capabilities);

            } else {
                driver = new ChromeDriver(options);
            }

        }
        driver.manage().timeouts().setScriptTimeout(timeout, TimeUnit.SECONDS);

    } catch (MalformedURLException e) {
        log.error("MalformedURLException in BrowserClient.initDriver", e);
    }
}

From source file:com.lohika.alp.selenium.configurator.FirefoxDriverConfigurator.java

License:Open Source License

public DesiredCapabilities configure(DesiredCapabilities capabilities) {

    String[] domains = JsErrorCatcherConfiguration.getInstance().getAllowDomains();

    if (domains == null)
        return capabilities;

    FirefoxProfile profile;/* www. j  a v  a 2  s  . c o  m*/

    profile = (FirefoxProfile) capabilities.getCapability(FirefoxDriver.PROFILE);

    if (profile == null)
        profile = new FirefoxProfile();

    // enable access to XPCComponents
    profile.setPreference("signed.applets.codebase_principal_support", true);
    int i = 0;
    for (String host : domains) {
        profile.setPreference("capability.principal.codebase.p" + i + ".granted",
                "UniversalXPConnect UniversalBrowserRead UniversalBrowserWrite UniversalPreferencesRead UniversalPreferencesWrite UniversalFileRead");
        profile.setPreference("capability.principal.codebase.p" + i + ".id", host);
        i++;
    }

    capabilities.setCapability(FirefoxDriver.PROFILE, profile);

    return capabilities;
}

From source file:com.pentaho.selenium.BaseTest.java

License:Apache License

@BeforeSuite
public void setUpClass() {
    this.log.info("Master setup");

    // Initialize BASEURL
    baseUrl = "http://localhost:8080/pentaho/";
    downloadDir = System.getProperty("user.home") + "\\SeleniumDonwloadDir";
    pentahoReleaseVersion = System.getProperty("pentaho.release.version");
    pentahoBaServerServiceName = System.getProperty("pentaho.bi.server.service.name");
    pentahoBaServerUrl = System.getProperty("pentaho.bi.server.url");
    pentahoBaServerHostname = System.getProperty("pentaho.bi.server.hostname");
    pentahoBaServerPort = System.getProperty("pentaho.bi.server.port");

    this.log.info("pentaho.release.version::" + pentahoReleaseVersion);

    new File(downloadDir).mkdir();

    System.setProperty("webdriver.log.file", "/dev/stdout");
    //System.setProperty( "webdriver.firefox.logfile", "/dev/stdout" );

    // Setting log preferences
    LoggingPreferences logs = new LoggingPreferences();
    logs.enable(LogType.BROWSER, Level.WARNING);
    /*logs.enable( LogType.SERVER, Level.WARNING );
    logs.enable( LogType.DRIVER, Level.WARNING );
    logs.enable( LogType.PROFILER, Level.WARNING );
    logs.enable( LogType.CLIENT, Level.WARNING );
    logs.enable( LogType.PERFORMANCE, Level.WARNING );*/

    /*// ww w.j av  a  2  s  .  co  m
     * INTERNET EXPLORER DRIVER
     */
    // Initialize DRIVER
    FirefoxProfile ffProfile = new FirefoxProfile();
    //ffProfile.setEnableNativeEvents( true );
    ffProfile.setPreference("general.useragent.locale", "en-US");
    ffProfile.setPreference("intl.accept_languages", "en-US, en");
    ffProfile.setPreference("browser.download.folderList", 2); // 0 - Desktop, 1- Download dir, 2 - specify dir
    ffProfile.setPreference("browser.helperApps.alwaysAsk.force", false);
    ffProfile.setPreference("browser.download.manager.showWhenStarting", false);
    ffProfile.setPreference("browser.download.dir", downloadDir);
    ffProfile.setPreference("browser.helperApps.neverAsk.saveToDisk",
            "table/excel;application/vnd.ms-excel;application/msexcel;application/x-msexcel;application/x-ms-excel;application/x-excel;application/x-dos_ms_excel;application/xls;application/x-xls;application/vnd.openxmlformats-officedocument.spreadsheetml.sheet;text/csv;application/rtf");

    // Setting properties for webdriver
    DesiredCapabilities capabilities = DesiredCapabilities.firefox();
    capabilities.setCapability(CapabilityType.LOGGING_PREFS, logs);
    capabilities.setCapability(FirefoxDriver.PROFILE, ffProfile);

    BaseTest.driver = new FirefoxDriver(capabilities);

    /*
     * INTERNET EXPLORER DRIVER
     */
    /*
     * System.setProperty("webdriver.ie.driver", "C:\\IEDriverServer_Win32_2.44.0\\IEDriverServer.exe");
     * System.setProperty("webdriver.ie.driver.host", "10.120.42.25");
     * System.setProperty("webdriver.ie.driver.loglevel", "FATAL"); System.setProperty("webdriver.ie.driver.loglevel",
     * downloadDir + "\\seleniumlogs.txt");
     *
     * // We could use any driver for our tests... DesiredCapabilities capabilities = new DesiredCapabilities();
     * capabilities.setBrowserName("internet explorer"); capabilities.setVersion("8");
     * capabilities.setPlatform(Platform.WINDOWS); capabilities.setCapability("platform", "WINDOWS");
     * capabilities.setJavascriptEnabled(true); //capabilities.setCapability(InternetExplorerDriver.HOST,
     * "10.120.40.243");
     *
     * capabilities.setCapability(InternetExplorerDriver.INTRODUCE_FLAKINESS_BY_IGNORING_SECURITY_DOMAINS, true);
     * capabilities.setCapability(CapabilityType.ForSeleniumServer.ENSURING_CLEAN_SESSION, true);
     *
     * // Get a handle to the driver. This will throw an exception // if a matching driver cannot be located driver =
     * new RemoteWebDriver(new URL("http://10.120.42.25:4444/wd/hub"), capabilities); //driver = new
     * InternetExplorerDriver();
     */

    BaseTest.driver.manage().window().setPosition(new Point(0, 0));
    BaseTest.driver.manage().window().setSize(new Dimension(1360, 764));
    BaseTest.driver.manage().timeouts().pageLoadTimeout(180, TimeUnit.SECONDS);
    BaseTest.driver.manage().timeouts().implicitlyWait(30, TimeUnit.SECONDS);
    BaseTest.driver.manage().timeouts().setScriptTimeout(30, TimeUnit.SECONDS);

    // Initialize WAIT
    wait = new FluentWait<WebDriver>(BaseTest.driver).withTimeout(30, TimeUnit.SECONDS).pollingEvery(5,
            TimeUnit.SECONDS);
}

From source file:com.seleniumtests.browserfactory.FirefoxCapabilitiesFactory.java

License:Apache License

/**
 * Create firefox capabilities./*from ww w  .ja va 2  s  . c o m*/
 */
public DesiredCapabilities createCapabilities(final DriverConfig webDriverConfig) {
    DesiredCapabilities capability;
    capability = new DesiredCapabilities();
    capability.setBrowserName(DesiredCapabilities.firefox().getBrowserName());

    FirefoxProfile profile = getFirefoxProfile(webDriverConfig);
    configProfile(profile, webDriverConfig);
    capability.setCapability(FirefoxDriver.PROFILE, profile);

    if (webDriverConfig.isEnableJavascript()) {
        capability.setJavascriptEnabled(true);
    } else {
        capability.setJavascriptEnabled(false);
    }

    capability.setCapability(CapabilityType.TAKES_SCREENSHOT, true);
    capability.setCapability(CapabilityType.ACCEPT_SSL_CERTS, true);

    if (webDriverConfig.getBrowserVersion() != null) {
        capability.setVersion(webDriverConfig.getBrowserVersion());
    }

    if (webDriverConfig.getWebPlatform() != null) {
        capability.setPlatform(webDriverConfig.getWebPlatform());
    }

    if (webDriverConfig.getProxyHost() != null) {
        capability.setCapability(CapabilityType.PROXY, webDriverConfig.getProxy());
    }

    return capability;
}

From source file:com.seleniumtests.browserfactory.MarionetteCapabilitiesFactory.java

License:Apache License

/**
 * Create firefox capabilities.//from   w ww  .j  a  v  a 2 s . co  m
 */
public DesiredCapabilities createCapabilities(final DriverConfig webDriverConfig) {
    DesiredCapabilities capability;
    capability = new DesiredCapabilities();
    capability.setBrowserName(DesiredCapabilities.firefox().getBrowserName());

    FirefoxProfile profile = getFirefoxProfile(webDriverConfig);
    configProfile(profile, webDriverConfig);
    capability.setCapability(FirefoxDriver.PROFILE, profile);
    capability.setCapability("marionette", true);

    if (webDriverConfig.isEnableJavascript()) {
        capability.setJavascriptEnabled(true);
    } else {
        capability.setJavascriptEnabled(false);
    }

    capability.setCapability(CapabilityType.TAKES_SCREENSHOT, true);
    capability.setCapability(CapabilityType.ACCEPT_SSL_CERTS, true);

    if (webDriverConfig.getBrowserVersion() != null) {
        capability.setVersion(webDriverConfig.getBrowserVersion());
    }

    if (webDriverConfig.getWebPlatform() != null) {
        capability.setPlatform(webDriverConfig.getWebPlatform());
    }

    if (webDriverConfig.getProxyHost() != null) {
        capability.setCapability(CapabilityType.PROXY, webDriverConfig.getProxy());
    }

    // Set MarionetteDriver for local mode
    if (webDriverConfig.getMode() == DriverMode.LOCAL) {
        String marionetteDriverPath = webDriverConfig.getChromeDriverPath();
        if (marionetteDriverPath == null) {
            try {
                if (System.getenv("webdriver.gecko.driver") != null) {
                    System.out.println(
                            "get gecko driver from property:" + System.getenv("webdriver.gecko.driver"));
                    System.setProperty("webdriver.gecko.driver", System.getenv("webdriver.gecko.driver"));
                } else {
                    handleExtractResources();
                }
            } catch (IOException ex) {
                ex.printStackTrace();
            }
        } else {
            System.setProperty("webdriver.gecko.driver", marionetteDriverPath);
        }
    }

    return capability;
}