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/");
}
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;
}
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);
}
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);
}
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);
}
Aggregations