Search in sources :

Example 41 with DesiredCapabilities

use of org.openqa.selenium.remote.DesiredCapabilities in project selenium_java by sergueik.

the class GoogleSearchPageObjectFactoryTest method setUp.

@Before
public void setUp() {
    // Create a new instance of a driver
    System.setProperty("webdriver.chrome.driver", (new File("c:/java/selenium/chromedriver.exe")).getAbsolutePath());
    DesiredCapabilities capabilities = DesiredCapabilities.chrome();
    driver = new ChromeDriver(capabilities);
    // Navigate to the right place
    driver.manage().timeouts().implicitlyWait(10, TimeUnit.SECONDS);
    driver.get("http://www.google.ca/");
}
Also used : DesiredCapabilities(org.openqa.selenium.remote.DesiredCapabilities) ChromeDriver(org.openqa.selenium.chrome.ChromeDriver) File(java.io.File) Before(org.junit.Before)

Example 42 with DesiredCapabilities

use of org.openqa.selenium.remote.DesiredCapabilities in project selenium_java by sergueik.

the class XMLHttpRequestAsyncTest method beforeSuite.

// common code
@BeforeSuite
@SuppressWarnings("deprecation")
public void beforeSuite() throws Exception {
    getOsName();
    if (browser.equals("chrome")) {
        System.setProperty("webdriver.chrome.driver", (new File("c:/java/selenium/chromedriver.exe")).getAbsolutePath());
        DesiredCapabilities capabilities = DesiredCapabilities.chrome();
        ChromeOptions options = new ChromeOptions();
        Map<String, Object> chromePrefs = new HashMap<>();
        chromePrefs.put("profile.default_content_settings.popups", 0);
        String downloadFilepath = System.getProperty("user.dir") + System.getProperty("file.separator") + "target" + System.getProperty("file.separator");
        chromePrefs.put("download.default_directory", downloadFilepath);
        chromePrefs.put("enableNetwork", "true");
        options.setExperimentalOption("prefs", chromePrefs);
        for (String optionAgrument : (new String[] { "allow-running-insecure-content", "allow-insecure-localhost", "enable-local-file-accesses", "disable-notifications", /* "start-maximized" , */
        "browser.download.folderList=2", "--browser.helperApps.neverAsk.saveToDisk=image/jpg,text/csv,text/xml,application/xml,application/vnd.ms-excel,application/x-excel,application/x-msexcel,application/excel,application/pdf", String.format("browser.download.dir=%s", downloadFilepath) /* "user-data-dir=/path/to/your/custom/profile"  , */
        })) {
            options.addArguments(optionAgrument);
        }
        // options for headless
        /*
			for (String optionAgrument : (new String[] { "headless",
					"window-size=1200x600", })) {
				options.addArguments(optionAgrument);
			}
			*/
        capabilities.setBrowserName(DesiredCapabilities.chrome().getBrowserName());
        capabilities.setCapability(ChromeOptions.CAPABILITY, options);
        capabilities.setCapability(CapabilityType.ACCEPT_SSL_CERTS, true);
        driver = new ChromeDriver(capabilities);
    } else if (browser.equals("firefox")) {
        System.setProperty("webdriver.gecko.driver", osName.toLowerCase().startsWith("windows") ? new File("c:/java/selenium/geckodriver.exe").getAbsolutePath() : "/tmp/geckodriver");
        System.setProperty("webdriver.firefox.bin", osName.toLowerCase().startsWith("windows") ? new File("c:/Program Files (x86)/Mozilla Firefox/firefox.exe").getAbsolutePath() : "/usr/bin/firefox");
        DesiredCapabilities capabilities = DesiredCapabilities.firefox();
        // use legacy FirefoxDriver
        capabilities.setCapability("marionette", false);
        // http://www.programcreek.com/java-api-examples/index.php?api=org.openqa.selenium.firefox.FirefoxProfile
        capabilities.setCapability("locationContextEnabled", false);
        capabilities.setCapability("acceptSslCerts", true);
        capabilities.setCapability("elementScrollBehavior", 1);
        FirefoxProfile profile = new FirefoxProfile();
        profile.setAcceptUntrustedCertificates(true);
        profile.setAssumeUntrustedCertificateIssuer(true);
        profile.setEnableNativeEvents(false);
        System.out.println(System.getProperty("user.dir"));
        capabilities.setCapability(FirefoxDriver.PROFILE, profile);
        try {
            driver = new FirefoxDriver(capabilities);
        } catch (WebDriverException e) {
            e.printStackTrace();
            throw new RuntimeException("Cannot initialize Firefox driver");
        }
    }
    actions = new Actions(driver);
    /*
		System.setProperty("webdriver.chrome.driver",
				"c:/java/selenium/chromedriver.exe");
		driver = new ChromeDriver();
		*/
    driver.manage().timeouts().setScriptTimeout(30, TimeUnit.SECONDS);
    wait = new WebDriverWait(driver, flexibleWait);
    wait.pollingEvery(pollingInterval, TimeUnit.MILLISECONDS);
    actions = new Actions(driver);
    // Declare JavascriptExecutor
    js = (JavascriptExecutor) driver;
}
Also used : HashMap(java.util.HashMap) Actions(org.openqa.selenium.interactions.Actions) DesiredCapabilities(org.openqa.selenium.remote.DesiredCapabilities) FirefoxProfile(org.openqa.selenium.firefox.FirefoxProfile) FirefoxDriver(org.openqa.selenium.firefox.FirefoxDriver) WebDriverWait(org.openqa.selenium.support.ui.WebDriverWait) ChromeOptions(org.openqa.selenium.chrome.ChromeOptions) ChromeDriver(org.openqa.selenium.chrome.ChromeDriver) File(java.io.File) WebDriverException(org.openqa.selenium.WebDriverException) BeforeSuite(org.testng.annotations.BeforeSuite)

Example 43 with DesiredCapabilities

use of org.openqa.selenium.remote.DesiredCapabilities in project selenium_java by sergueik.

the class HeadlessChromeProvider method get.

@Override
public ChromeDriver get() {
    if (config == null) {
        config = ConfigLoader.load();
    }
    getOsName();
    if (config.hasPath("webdriver.chrome.driver")) {
        setProperty("webdriver.chrome.driver", config.getString("webdriver.chrome.driver"));
    } else {
        try {
            final File tempDriver = osName.toLowerCase().startsWith("windows") ? new File("c:/java/selenium/chromedriver.exe") : new File("/tmp/headless_chromedriver");
            if (!tempDriver.exists()) {
                copyInputStreamToFile(// TODO: check if resource exist
                getResource(this.getClass(), osName.toLowerCase().startsWith("windows") ? "chromedriver_win64" : "chromedriver_linux64").openStream(), tempDriver);
            }
            tempDriver.setExecutable(true);
            setProperty("webdriver.chrome.driver", tempDriver.getPath());
        } catch (IOException e) {
            throw new RuntimeException(e);
        }
    }
    final ChromeOptions chromeOptions = new ChromeOptions();
    final String binary = config.hasPath("webdriver.chrome.binary") ? config.getString("webdriver.chrome.binary") : osName.toLowerCase().startsWith("windows") ? (new File("C:/Program Files (x86)/Google/Chrome/Application/chrome.exe")).getAbsolutePath() : "/usr/bin/google-chrome";
    chromeOptions.setBinary(binary);
    final String windowSize;
    if (config.hasPath("chrome.window.size")) {
        windowSize = config.getString("chrome.window.size");
    } else {
        windowSize = "1920,1200";
    }
    final boolean useHeadless = !config.hasPath("chrome.headless") || config.hasPath("chrome.headless") && config.getBoolean("chrome.headless");
    if (useHeadless) {
        chromeOptions.addArguments("--headless", "--disable-gpu", "--incognito", "--whitelisted-ips=''", "window-size=" + windowSize);
    } else {
        LOG.warn("Will not use headless mode.");
        chromeOptions.addArguments("--incognito", "window-size=" + windowSize);
    }
    final DesiredCapabilities capabilities = DesiredCapabilities.chrome();
    capabilities.setCapability(CAPABILITY, chromeOptions);
    LOG.info("Providing chromedriver from {} for {}.", getProperty("webdriver.chrome.driver"), binary);
    return new ChromeDriver(capabilities);
}
Also used : DesiredCapabilities(org.openqa.selenium.remote.DesiredCapabilities) ChromeOptions(org.openqa.selenium.chrome.ChromeOptions) IOException(java.io.IOException) ChromeDriver(org.openqa.selenium.chrome.ChromeDriver) File(java.io.File) FileUtils.copyInputStreamToFile(org.apache.commons.io.FileUtils.copyInputStreamToFile)

Example 44 with DesiredCapabilities

use of org.openqa.selenium.remote.DesiredCapabilities in project selenium_java by sergueik.

the class BaseTest method setUp.

@BeforeMethod
public void setUp() throws Exception {
    // BasicConfigurator.configure();
    if (hubUrl == null || hubUrl.trim().isEmpty()) {
        // if no hubUrl specified, run the tests on localhost
        if (browser == null || browser.trim().isEmpty()) {
            // if no browser specified, use IE
            driver = new InternetExplorerDriver();
        } else {
            if (browser.trim().equalsIgnoreCase("firefox")) {
                driver = new FirefoxDriver();
            } else if (browser.trim().equalsIgnoreCase("chrome")) {
                driver = new ChromeDriver();
            } else {
                driver = new InternetExplorerDriver();
            }
        }
    } else {
        DesiredCapabilities capability = new DesiredCapabilities();
        capability.setBrowserName(browser);
        driver = new RemoteWebDriver(new URL(hubUrl), capability);
    }
    driver.manage().timeouts().implicitlyWait(30, TimeUnit.SECONDS);
}
Also used : InternetExplorerDriver(org.openqa.selenium.ie.InternetExplorerDriver) FirefoxDriver(org.openqa.selenium.firefox.FirefoxDriver) RemoteWebDriver(org.openqa.selenium.remote.RemoteWebDriver) DesiredCapabilities(org.openqa.selenium.remote.DesiredCapabilities) ChromeDriver(org.openqa.selenium.chrome.ChromeDriver) URL(java.net.URL) BeforeMethod(org.testng.annotations.BeforeMethod)

Example 45 with DesiredCapabilities

use of org.openqa.selenium.remote.DesiredCapabilities in project selenium_java by sergueik.

the class SampleTest method setup.

@BeforeClass
public static void setup() throws IOException {
    System.setProperty("webdriver.chrome.driver", (new File("c:/java/selenium/chromedriver.exe")).getAbsolutePath());
    DesiredCapabilities capabilities = DesiredCapabilities.chrome();
    ChromeOptions options = new ChromeOptions();
    HashMap<String, Object> chromePrefs = new HashMap<>();
    chromePrefs.put("profile.default_content_settings.popups", 0);
    String downloadFilepath = System.getProperty("user.dir") + System.getProperty("file.separator") + "target" + System.getProperty("file.separator");
    chromePrefs.put("download.default_directory", downloadFilepath);
    chromePrefs.put("enableNetwork", "true");
    options.setExperimentalOption("prefs", chromePrefs);
    for (String optionAgrument : (new String[] { "allow-running-insecure-content", "allow-insecure-localhost", "enable-local-file-accesses", "disable-notifications", /* "start-maximized" , */
    "browser.download.folderList=2", "--browser.helperApps.neverAsk.saveToDisk=image/jpg,text/csv,text/xml,application/xml,application/vnd.ms-excel,application/x-excel,application/x-msexcel,application/excel,application/pdf", String.format("browser.download.dir=%s", downloadFilepath) /* "user-data-dir=/path/to/your/custom/profile"  , */
    })) {
        options.addArguments(optionAgrument);
    }
    capabilities.setBrowserName(DesiredCapabilities.chrome().getBrowserName());
    capabilities.setCapability(ChromeOptions.CAPABILITY, options);
    capabilities.setCapability(CapabilityType.ACCEPT_SSL_CERTS, true);
    driver = new ChromeDriver(capabilities);
    driver.manage().window().setSize(new Dimension(width, height));
    driver.manage().timeouts().pageLoadTimeout(50, TimeUnit.SECONDS).implicitlyWait(implicitWait, TimeUnit.SECONDS).setScriptTimeout(10, TimeUnit.SECONDS);
    wait = new WebDriverWait(driver, flexibleWait);
    wait.pollingEvery(pollingInterval, TimeUnit.MILLISECONDS);
    actions = new Actions(driver);
}
Also used : HashMap(java.util.HashMap) Actions(org.openqa.selenium.interactions.Actions) DesiredCapabilities(org.openqa.selenium.remote.DesiredCapabilities) WebDriverWait(org.openqa.selenium.support.ui.WebDriverWait) ChromeOptions(org.openqa.selenium.chrome.ChromeOptions) Dimension(org.openqa.selenium.Dimension) ChromeDriver(org.openqa.selenium.chrome.ChromeDriver) File(java.io.File) BeforeClass(org.junit.BeforeClass)

Aggregations

DesiredCapabilities (org.openqa.selenium.remote.DesiredCapabilities)178 File (java.io.File)55 ChromeDriver (org.openqa.selenium.chrome.ChromeDriver)40 URL (java.net.URL)34 HashMap (java.util.HashMap)34 RemoteWebDriver (org.openqa.selenium.remote.RemoteWebDriver)30 ChromeOptions (org.openqa.selenium.chrome.ChromeOptions)29 Test (org.testng.annotations.Test)22 FirefoxDriver (org.openqa.selenium.firefox.FirefoxDriver)20 BeforeClass (org.junit.BeforeClass)19 TestSetup (com.coveros.selenified.utilities.TestSetup)17 FirefoxProfile (org.openqa.selenium.firefox.FirefoxProfile)17 PhantomJSDriver (org.openqa.selenium.phantomjs.PhantomJSDriver)16 WebDriverWait (org.openqa.selenium.support.ui.WebDriverWait)14 MalformedURLException (java.net.MalformedURLException)13 Before (org.junit.Before)13 Test (org.junit.Test)13 InternetExplorerDriver (org.openqa.selenium.ie.InternetExplorerDriver)12 Actions (org.openqa.selenium.interactions.Actions)12 Dimension (org.openqa.selenium.Dimension)11