List of usage examples for org.openqa.selenium.safari SafariDriver SafariDriver
public SafariDriver(SafariDriverService safariService)
From source file:com.monstrenyatko.desert.util.WebDriverFactory.java
License:MIT License
private static WebDriver createLocalDriver(Capabilities capabilities) { String browserType = capabilities.getBrowserName(); if (browserType.equals(BrowserType.FIREFOX)) return new FirefoxDriver(capabilities); if (browserType.equals(BrowserType.IE)) return new InternetExplorerDriver(capabilities); if (browserType.equals(BrowserType.CHROME)) return new ChromeDriver(capabilities); if (browserType.equals(BrowserType.SAFARI)) return new SafariDriver(capabilities); throw new Error("Unsupported browser type: " + browserType); }
From source file:com.redhat.darcy.webdriver.SafariBrowserFactory.java
License:Open Source License
@Override public Browser newBrowser() { SafariDriver driver;/* w ww.j a v a 2 s . c o m*/ if (capabilities != null) { driver = new SafariDriver(capabilities); } else if (safariOptions != null) { driver = new SafariDriver(safariOptions); } else { driver = new SafariDriver(); } return makeBrowser(driver, elementImpls); }
From source file:com.testmax.handler.SeleniumBaseHandler.java
License:CDDL license
@Before public synchronized void setUp() throws Exception { //set default driver if (this.isMultiThreaded) { this.libs = null; this.createLogFile(); this.varmap = BaseHandler.threadData.get(threadIndex); if (this.libs == null || this.libs.isEmpty()) { this.libs = this.parseTagLib(); }//from w w w . j a va 2 s . co m } else { this.libs = this.parseTagLib(); this.varmap = BaseHandler.getVarMap(); this.threadIndex = this.varmap.get("datasetIndex"); } this.printMessage("####### SELENIUM TEST STARTED #################"); this.printMessage("####### Dataset:" + this.varmap.values()); this.timer = new PrintTime(); File file = null; //driver = new FirefoxDriver(); v_driver = getDeclaredVariable("driver"); if (v_driver == null || v_driver.isEmpty()) { v_driver = ConfigLoader.getConfig("SELENIUM_DRIVER"); if (v_driver == null || v_driver.isEmpty()) { v_driver = "firefox"; } } String driver_path = getDeclaredVariable("driver_path"); if (v_driver.equalsIgnoreCase("chrome")) { if (TestEngine.suite != null) { file = new File(driver_path != null && !driver_path.isEmpty() ? driver_path : chrome_driver_path); if (!file.exists()) { String chrome_path = TestEngine.suite.getWorkspace() + TestEngine.suite.getJobname() + "/lib/chromedriver.exe"; file = new File(chrome_path); if (!file.exists()) { file = new File(TestEngine.suite.getWorkspace() + "/lib/chromedriver.exe"); } } } else { file = new File(driver_path != null && !driver_path.isEmpty() ? driver_path : chrome_driver_path); } this.printMessage("Chrome Driver Path=" + file.getAbsolutePath()); System.setProperty("webdriver.chrome.driver", file.getAbsolutePath()); DesiredCapabilities capability = DesiredCapabilities.chrome(); //capability.setCapability("chrome.switches", Arrays.asList("--allow-running-insecure-content=true")); if (System.getProperty("os.name").toLowerCase().contains("mac")) { file = new File(ConfigLoader.getWmRoot() + "/lib/chromedriver_mac"); System.setProperty("webdriver.chrome.driver", file.getAbsolutePath()); capability.setCapability("platform", Platform.ANY); capability.setCapability("binary", "/Application/chrome"); //for linux "chrome.switches", "--verbose" capability.setCapability("chrome.switches", "--verbose"); driver = new ChromeDriver(capability); } else { driver = new ChromeDriver(capability); } } else if (v_driver.equalsIgnoreCase("ie")) { if (is64bit()) { file = new File(driver_path != null && !driver_path.isEmpty() ? driver_path : ie_driver_path64bit); } else { file = new File(driver_path != null && !driver_path.isEmpty() ? driver_path : ie_driver_path32bit); } this.printMessage("##### IE DRIVER PATH=" + file.getAbsolutePath()); System.setProperty("webdriver.ie.driver", file.getAbsolutePath()); DesiredCapabilities capability = DesiredCapabilities.internetExplorer(); capability.setCapability("acceptSslCerts", true); capability.setCapability("platform", Platform.WINDOWS); capability.setCapability(InternetExplorerDriver.IE_ENSURE_CLEAN_SESSION, true); if (is64bit()) { capability.setCapability("iedriver-version", "x64_2.41.0"); } //capability.setCapability(InternetExplorerDriver.INTRODUCE_FLAKINESS_BY_IGNORING_SECURITY_DOMAINS,true); driver = new InternetExplorerDriver(capability); maxTimeToWait = maxTimeToWait * 5; this.isIE = true; } else if (v_driver.equalsIgnoreCase("firefox")) { /*file = new File("firebug-1.8.1.xpi"); FirefoxProfile firefoxProfile = new FirefoxProfile(); firefoxProfile.setPreference("security.mixed_content.block_active_content", false); firefoxProfile.setPreference("security.mixed_content.block_display_content", true); firefoxProfile.setPreference("browser.cache.disk.enable", true); firefoxProfile.addExtension(file); firefoxProfile.setPreference("extensions.firebug.currentVersion", "1.8.1"); // Avoid startup screen driver = new FirefoxDriver(firefoxProfile); */ if (System.getProperty("os.name").toLowerCase().contains("mac")) { DesiredCapabilities capability = DesiredCapabilities.firefox(); capability.setCapability("platform", Platform.ANY); capability.setCapability("binary", "/Application/firefox"); //for linux //capability.setCapability("binary", "/ms/dist/fsf/PROJ/firefox/16.0.0/bin/firefox"); //for linux //capability.setCapability("binary", "C:\\Program Files\\Mozilla Firefox\\msfirefox.exe"); //for windows driver = new FirefoxDriver(capability); } else { // driver = new FirefoxDriver(); } } else if (v_driver.equalsIgnoreCase("safari")) { if (System.getProperty("os.name").toLowerCase().contains("mac")) { this.printMessage("#####STARTING Safri in Mac ####"); DesiredCapabilities capability = DesiredCapabilities.safari(); capability.setCapability("platform", Platform.ANY); capability.setCapability("binary", "/Application/safari"); //for linux driver = new SafariDriver(capability); } else { // Read Instruction for Safari Extension //http://rationaleemotions.wordpress.com/2012/05/25/working-with-safari-driver/ // Get certificate from https://docs.google.com/folder/d/0B5KGduKl6s6-ZGpPZlA0Rm03Nms/edit this.printMessage("#####STARTING Safri in Windows ####"); String safari_install_path = "C:\\Program Files (x86)\\Safari\\"; DesiredCapabilities capability = DesiredCapabilities.safari(); capability.setCapability("platform", Platform.ANY); capability.setCapability("binary", safari_install_path + "Safari.exe"); //for windows //capability.setCapability(SafariDriver.DATA_DIR_CAPABILITY, "C:\\Program Files (x86)\\Safari\\SafariData"); //System.setProperty("webdriver.safari.driver", safari_install_path+"SafariDriver.safariextension\\"); driver = new SafariDriver(capability); } } else if (v_driver.equalsIgnoreCase("htmlunit")) { DesiredCapabilities capability = DesiredCapabilities.htmlUnit(); capability.setJavascriptEnabled(true); //capability.setCapability("browserName","chrome"); //capability.setBrowserName(BrowserVersion.CHROME); driver = new HtmlUnitDriver(capability); } else { file = new File(driver_path != null && !driver_path.isEmpty() ? driver_path : chrome_driver_path); System.setProperty("webdriver.chrome.driver", file.getAbsolutePath()); driver = new ChromeDriver(); } baseUrl = ConfigLoader.getConfig("BASE_APPLICATION_URL"); baseUrl = baseUrl.replace("[env]", ConfigLoader.getConfig("QA_TEST_ENV")); for (Cookie cookie : driver.manage().getCookies()) { printMessage("name=" + cookie.getName()); printMessage("domain=" + cookie.getDomain()); printMessage("path=" + cookie.getPath()); printMessage("value=" + cookie.getValue()); } java.awt.Dimension screenSize = java.awt.Toolkit.getDefaultToolkit().getScreenSize(); if (this.varmap.get("browserwidth") != null) { try { browserwidth = new Integer(this.varmap.get("browserwidth")); } catch (Exception e) { browserwidth = 1020; } } driver.manage().window().setSize(new Dimension(browserwidth, (int) screenSize.getHeight())); String removecookie = getDeclaredVariable("removecookie"); if (this.isEmptyValue(removecookie) || removecookie.equalsIgnoreCase("yes")) { driver.manage().deleteAllCookies(); } driver.manage().timeouts().implicitlyWait(maxTimeToWait, TimeUnit.SECONDS); driverList.put(this.threadIndex, driver); this.resetTestResult(); }
From source file:com.testmax.util.JavaScriptUtl.java
License:CDDL license
public WebDriver initWebDriverDriver(String browser) { this.browser = browser; File file = null;/*from ww w . j a v a 2 s . c om*/ if (browser == null || browser.isEmpty()) { browser = "firefox"; } try { String driver_path = ""; if (browser.equalsIgnoreCase("chrome")) { if (TestEngine.suite != null) { String chrome_path = TestEngine.suite.getWorkspace() + TestEngine.suite.getJobname() + "/lib/chromedriver.exe"; file = new File(chrome_path); if (!file.exists()) { file = new File(TestEngine.suite.getWorkspace() + "/lib/chromedriver.exe"); } } else { file = new File( driver_path != null && !driver_path.isEmpty() ? driver_path : chrome_driver_path); } WmLog.printMessage("Chrome Driver Path=" + file.getAbsolutePath()); System.setProperty("webdriver.chrome.driver", file.getAbsolutePath()); if (System.getProperty("os.name").toLowerCase().contains("mac")) { file = new File(ConfigLoader.getWmRoot() + "/lib/chromedriver_mac"); System.setProperty("webdriver.chrome.driver", file.getAbsolutePath()); DesiredCapabilities capability = DesiredCapabilities.chrome(); capability.setCapability("platform", Platform.ANY); capability.setCapability("binary", "/Application/chrome"); //for linux driver = new ChromeDriver(capability); } else { driver = new ChromeDriver(); } } else if (browser.equalsIgnoreCase("ie")) { if (is64bit()) { file = new File( driver_path != null && !driver_path.isEmpty() ? driver_path : ie_driver_path64bit); } else { file = new File( driver_path != null && !driver_path.isEmpty() ? driver_path : ie_driver_path32bit); } WmLog.printMessage("##### IE DRIVER PATH=" + file.getAbsolutePath()); System.setProperty("webdriver.ie.driver", file.getAbsolutePath()); driver = new InternetExplorerDriver(); maxTimeToWait = maxTimeToWait * 5; } else if (browser.equalsIgnoreCase("firefox")) { DesiredCapabilities capability = DesiredCapabilities.firefox(); LoggingPreferences prefs = new LoggingPreferences(); prefs.enable(LogType.BROWSER, Level.ALL); capability.setCapability(CapabilityType.LOGGING_PREFS, prefs); if (System.getProperty("os.name").toLowerCase().contains("mac")) { //DesiredCapabilities capability = DesiredCapabilities.firefox(); capability.setCapability("platform", Platform.ANY); capability.setCapability("binary", "/Application/firefox"); //for linux driver = new FirefoxDriver(capability); } else { driver = new FirefoxDriver(capability); } } else if (browser.equalsIgnoreCase("safari")) { if (System.getProperty("os.name").toLowerCase().contains("mac")) { WmLog.printMessage("#####STARTING Safri in Mac ####"); DesiredCapabilities capability = DesiredCapabilities.safari(); capability.setCapability("platform", Platform.ANY); capability.setCapability("binary", "/Application/safari"); //for linux driver = new SafariDriver(capability); } else { // Read Instruction for Safari Extension //http://rationaleemotions.wordpress.com/2012/05/25/working-with-safari-driver/ // Get certificate from https://docs.google.com/folder/d/0B5KGduKl6s6-ZGpPZlA0Rm03Nms/edit WmLog.printMessage("#####STARTING Safri in Windows ####"); String safari_install_path = "C:\\Program Files (x86)\\Safari\\"; DesiredCapabilities capability = DesiredCapabilities.safari(); capability.setCapability("platform", Platform.ANY); capability.setCapability("binary", safari_install_path + "Safari.exe"); //for windows //capability.setCapability(SafariDriver.DATA_DIR_CAPABILITY, "C:\\Program Files (x86)\\Safari\\SafariData"); //System.setProperty("webdriver.safari.driver", safari_install_path+"SafariDriver.safariextension\\"); driver = new SafariDriver(capability); } } else if (browser.equalsIgnoreCase("htmlunit")) { DesiredCapabilities capability = DesiredCapabilities.htmlUnit(); capability.setJavascriptEnabled(true); //capability.setCapability("browserName","chrome"); //capability.setBrowserName(BrowserVersion.CHROME); driver = new HtmlUnitDriver(capability); } else { file = new File(driver_path != null && !driver_path.isEmpty() ? driver_path : chrome_driver_path); System.setProperty("webdriver.chrome.driver", file.getAbsolutePath()); driver = new ChromeDriver(); } driver.manage().timeouts().implicitlyWait(maxTimeToWait, TimeUnit.SECONDS); } catch (Exception e) { WmLog.printMessage("******** FAILED to launch browser=" + this.browser + " :" + e.getMessage()); e.printStackTrace(); } return driver; }
From source file:com.thoughtworks.selenium.SeleneseTestNgHelperVir.java
License:Apache License
/** * Start browser session.//from w w w . ja v a2 s . c om * * @param browserString * the browser string */ public final void startBrowserSession(final String browserString) { DesiredCapabilities capabilities = getWebDriverCapabilities(); WebDriver driver; if (browserString.contains("chrome") || browserString.contains("Chrome")) { driver = new ChromeDriver(); } else if (browserString.contains("safari")) { DesiredCapabilities.safari(); driver = new SafariDriver(capabilities); } else if (browserString.contains("iexplore")) { DesiredCapabilities.internetExplorer(); capabilities.setJavascriptEnabled(true); driver = new InternetExplorerDriver(capabilities); } else if (browserString.contains("firefox")) { FirefoxProfile profile = getDefaultProfile(); profile.setEnableNativeEvents(true); driver = new FirefoxDriver(profile); } else if (browserString.contains("opera")) { DesiredCapabilities.opera(); driver = new OperaDriver(capabilities); } else { getLog().info("Unsupported browser type passed " + browserString); throw new AssertionError("Unsupported Browser"); } setDriver(driver); if (getSeleniumInstances().isEmpty()) { putSeleniumInstances("default", driver); } else { putSeleniumInstances(getSeleniumInstanceName(), driver); } }
From source file:com.vilt.minium.script.impl.SafariDriverFactory.java
License:Apache License
@Override public WebDriver create(DesiredCapabilities capabilities) { return new SafariDriver(capabilities); }
From source file:de.ppi.selenium.browser.DefaultWebDriverFactory.java
License:Apache License
@Override public WebDriver createWebDriver(Map<String, String> options, DesiredCapabilities capabilities) throws IOException { ClientProperties properties = new ClientProperties(options.get(CLIENT_PROPERTIES_KEY)); WebDriver wd = null;/*from w ww .ja v a 2 s. c om*/ DesiredCapabilities desiredCapabilities = new DesiredCapabilities(capabilities); String browser = properties.getBrowser(); if (properties.isUseGrid()) { RemoteWebDriver remoteWebDriver = new RemoteWebDriver(new URL(properties.getGridUrl()), capabilities); remoteWebDriver.setFileDetector(new LocalFileDetector()); wd = remoteWebDriver; } else { if (browser == null || browser.equals("")) { throw new RuntimeException( "Browser cannot be null. Please set 'browser' in client properties. Supported browser types: IE, Firefox, Chrome, Safari, HtmlUnit."); } else if (browser.equalsIgnoreCase("ie") || browser.equalsIgnoreCase("iexplore") || browser.equalsIgnoreCase("*iexplore")) { String webdriverIEDriver = properties.getWebDriverIEDriver(); if (webdriverIEDriver != null) { System.setProperty("webdriver.ie.driver", webdriverIEDriver); } String browserVersion = properties.getBrowserVersion(); if (browserVersion == null || browserVersion.equals("")) { throw new RuntimeException( "When using IE as the browser, please set 'browser.version' in client properties"); } else { if (browserVersion.startsWith("9")) { desiredCapabilities.setCapability(CapabilityType.ACCEPT_SSL_CERTS, true); desiredCapabilities.setCapability( InternetExplorerDriver.INTRODUCE_FLAKINESS_BY_IGNORING_SECURITY_DOMAINS, true); wd = new InternetExplorerDriver(desiredCapabilities); } else { wd = new InternetExplorerDriver(desiredCapabilities); } } } else if ((browser.equalsIgnoreCase("firefox") || browser.equalsIgnoreCase("*firefox"))) { final String ffProfileFolder = properties.getFirefoxProfileFolder(); final String ffProfileFile = properties.getFirefoxProfileFile(); final String path = properties.getFfBinaryPath(); final FirefoxProfile ffp; if (ffProfileFolder != null) { ffp = new FirefoxProfile(new File(ffProfileFolder)); } else { ffp = new FirefoxProfile(); } if (ffProfileFile != null) { addPreferences(ffp, ffProfileFile); } addPreferences(ffp, properties); List<String> ffExtensions = properties.getFirefoxExtensions(); if (ffExtensions != null && ffExtensions.size() > 0) { addExtensionsToFirefoxProfile(ffp, ffExtensions); } if (path != null) { FirefoxBinary fireFox = getFFBinary(path); wd = new FirefoxDriver(fireFox, ffp, desiredCapabilities); } else { wd = new FirefoxDriver(new FirefoxBinary(), ffp, desiredCapabilities); } } else if (browser.equalsIgnoreCase("chrome")) { final String webdriverChromeDriver = properties.getWebDriverChromeDriver(); if (webdriverChromeDriver != null) { System.setProperty("webdriver.chrome.driver", webdriverChromeDriver); } final ChromeOptions chromeOptions = new ChromeOptions(); final String chromeBinaryPath = properties.getChromeBinaryPath(); if (chromeBinaryPath != null) { chromeOptions.setBinary(chromeBinaryPath); } if (properties.getAcceptedLanguages() != null) { final Map<String, Object> prefs = new HashMap<String, Object>(); prefs.put("intl.accept_languages", properties.getAcceptedLanguages()); chromeOptions.setExperimentalOption("prefs", prefs); } desiredCapabilities.setCapability(ChromeOptions.CAPABILITY, chromeOptions); wd = new ChromeDriver(desiredCapabilities); } else if (browser.equalsIgnoreCase("safari")) { wd = new SafariDriver(desiredCapabilities); } else if (browser.equalsIgnoreCase("htmlunit")) { final BrowserVersion browserVersion = BrowserVersion.FIREFOX_45; if (properties.getAcceptedLanguages() != null) { browserVersion.setBrowserLanguage(properties.getAcceptedLanguages().split(",")[0]); } wd = new HtmlUnitDriver(browserVersion); ((HtmlUnitDriver) wd).setJavascriptEnabled(true); } else if (browser.equalsIgnoreCase("phantomjs")) { final String webdriverPhantomJSDriver = properties.getWebDriverPhantomJSDriver(); if (properties.getAcceptedLanguages() != null) { desiredCapabilities.setCapability("phantomjs.page.customHeaders.Accept-Language", properties.getAcceptedLanguages()); } if (webdriverPhantomJSDriver != null) { desiredCapabilities.setCapability(PhantomJSDriverService.PHANTOMJS_EXECUTABLE_PATH_PROPERTY, webdriverPhantomJSDriver); wd = new PhantomJSDriver(desiredCapabilities); } else { wd = new PhantomJSDriver(ResolvingPhantomJSDriverService.createDefaultService(), desiredCapabilities); } } else { throw new IllegalArgumentException("Unsupported browser type: " + browser + ". Supported browser types: IE, Firefox, Chrome, Safari, HtmlUnit, phantomjs."); } // move browser windows to specific position. It's useful for // debugging... final int browserInitPositionX = properties.getBrowserInitPositionX(); final int browserInitPositionY = properties.getBrowserInitPositionY(); if (browserInitPositionX != 0 || browserInitPositionY != 0) { wd.manage().window().setSize(new Dimension(1280, 1024)); wd.manage().window().setPosition(new Point(browserInitPositionX, browserInitPositionY)); } wd.manage().timeouts().implicitlyWait(properties.getAppearWaitTime(), TimeUnit.MILLISECONDS); } return wd; }
From source file:edu.samplu.common.WebDriverUtil.java
License:Educational Community License
/** * remote.public.driver set to chrome or firefox (null assumes firefox) * if remote.public.hub is set a RemoteWebDriver is created (Selenium Grid) * if proxy.host is set, the web driver is setup to use a proxy * @return WebDriver or null if unable to create *///from w w w .j a va 2s.c o m public static WebDriver getWebDriver() { String driverParam = System.getProperty(ITUtil.HUB_DRIVER_PROPERTY); String hubParam = System.getProperty(ITUtil.HUB_PROPERTY); String proxyParam = System.getProperty(PROXY_HOST_PROPERTY); // setup proxy if specified as VM Arg DesiredCapabilities capabilities = new DesiredCapabilities(); WebDriver webDriver = null; if (StringUtils.isNotEmpty(proxyParam)) { capabilities.setCapability(CapabilityType.PROXY, new Proxy().setHttpProxy(proxyParam)); } if (hubParam == null) { if (driverParam == null || "firefox".equalsIgnoreCase(driverParam)) { FirefoxProfile profile = new FirefoxProfile(); profile.setEnableNativeEvents(false); capabilities.setCapability(FirefoxDriver.PROFILE, profile); return new FirefoxDriver(capabilities); } else if ("chrome".equalsIgnoreCase(driverParam)) { return new ChromeDriver(capabilities); } else if ("safari".equals(driverParam)) { System.out.println("SafariDriver probably won't work, if it does please contact Erik M."); return new SafariDriver(capabilities); } } else { try { if (driverParam == null || "firefox".equalsIgnoreCase(driverParam)) { return new RemoteWebDriver(new URL(ITUtil.getHubUrlString()), DesiredCapabilities.firefox()); } else if ("chrome".equalsIgnoreCase(driverParam)) { return new RemoteWebDriver(new URL(ITUtil.getHubUrlString()), DesiredCapabilities.chrome()); } } catch (MalformedURLException mue) { System.out.println(ITUtil.getHubUrlString() + " " + mue.getMessage()); mue.printStackTrace(); } } return null; }
From source file:io.ddavison.conductor.Locomotive.java
License:Open Source License
public Locomotive() { final Properties props = new Properties(); try {//from w ww . j ava2s. com props.load(getClass().getResourceAsStream("/default.properties")); } catch (IOException e) { logFatal("Couldn't load in default properties"); } catch (Exception e) { } /** * Order of overrides: * <ol> * <li>Test</li> * <li>JVM Arguments</li> * <li>Default properties</li> * </ol> */ final Config testConfiguration = getClass().getAnnotation(Config.class); configuration = new LocomotiveConfig(testConfiguration, props); DesiredCapabilities capabilities; Capabilities extraCapabilities; try { extraCapabilities = configuration.capabilities().newInstance(); } catch (InstantiationException | IllegalAccessException e) { e.printStackTrace(); logFatal(e.getMessage()); System.exit(1); return; } baseUrl = configuration.url(); log.debug(String.format( "\n=== Configuration ===\n" + "\tURL: %s\n" + "\tBrowser: %s\n" + "\tHub: %s\n" + "\tBase url: %s\n", configuration.url(), configuration.browser().moniker, configuration.hub(), configuration.baseUrl())); boolean isLocal = StringUtils.isEmpty(configuration.hub()); switch (configuration.browser()) { case CHROME: capabilities = DesiredCapabilities.chrome(); capabilities.merge(extraCapabilities); if (isLocal) try { driver = new ChromeDriver(capabilities); } catch (Exception x) { x.printStackTrace(); logFatal( "Also see https://github.com/conductor-framework/conductor/wiki/WebDriver-Executables"); System.exit(1); } break; case FIREFOX: capabilities = DesiredCapabilities.firefox(); capabilities.merge(extraCapabilities); if (isLocal) try { driver = new FirefoxDriver(capabilities); } catch (Exception x) { x.printStackTrace(); logFatal( "Also see https://github.com/conductor-framework/conductor/wiki/WebDriver-Executables"); System.exit(1); } break; case INTERNET_EXPLORER: capabilities = DesiredCapabilities.internetExplorer(); capabilities.merge(extraCapabilities); if (isLocal) try { driver = new InternetExplorerDriver(capabilities); } catch (Exception x) { x.printStackTrace(); logFatal( "Also see https://github.com/conductor-framework/conductor/wiki/WebDriver-Executables"); System.exit(1); } break; case EDGE: capabilities = DesiredCapabilities.edge(); capabilities.merge(extraCapabilities); if (isLocal) try { driver = new EdgeDriver(capabilities); } catch (Exception x) { x.printStackTrace(); logFatal( "Also see https://github.com/conductor-framework/conductor/wiki/WebDriver-Executables"); System.exit(1); } break; case SAFARI: capabilities = DesiredCapabilities.safari(); capabilities.merge(extraCapabilities); if (isLocal) try { driver = new SafariDriver(capabilities); } catch (Exception x) { x.printStackTrace(); logFatal( "Also see https://github.com/conductor-framework/conductor/wiki/WebDriver-Executables"); System.exit(1); } break; case PHANTOMJS: capabilities = DesiredCapabilities.phantomjs(); capabilities.merge(extraCapabilities); if (isLocal) try { driver = new PhantomJSDriver(capabilities); } catch (Exception x) { x.printStackTrace(); logFatal( "Also see https://github.com/conductor-framework/conductor/wiki/WebDriver-Executables"); System.exit(1); } break; default: System.err.println("Unknown browser: " + configuration.browser()); return; } if (!isLocal) // they are using a hub. try { capabilities.merge(extraCapabilities); driver = new RemoteWebDriver(new URL(configuration.hub()), capabilities); // just override the driver. } catch (Exception x) { logFatal("Couldn't connect to hub: " + configuration.hub()); x.printStackTrace(); return; } actions = new Actions(driver); if (StringUtils.isNotEmpty(baseUrl)) driver.navigate().to(baseUrl); }
From source file:io.wcm.qa.galenium.webdriver.WebDriverManager.java
License:Apache License
private WebDriver newDriver(TestDevice newTestDevice) { logInfo("Creating new " + runMode + " " + newTestDevice.getBrowserType() + " WebDriver for thread " + Thread.currentThread().getName()); DesiredCapabilities capabilities = getDesiredCapabilities(newTestDevice); GaleniumReportUtil.getLogger().info("Getting driver for runmode '" + runMode + "'"); switch (runMode) { case REMOTE://from ww w . j av a 2s .com logInfo("Connecting to grid at " + host + ":" + port + "..."); try { driver = new RemoteWebDriver(new URL("http", host, port, "/wd/hub"), capabilities); } catch (MalformedURLException ex) { throw new RuntimeException( "Couldn't construct valid URL using selenium.host=" + host + " and selenium.port=" + port); } break; default: case LOCAL: switch (newTestDevice.getBrowserType()) { case CHROME: driver = new ChromeDriver(capabilities); break; case IE: driver = new InternetExplorerDriver(capabilities); break; case SAFARI: driver = new SafariDriver(capabilities); break; case PHANTOMJS: driver = new PhantomJSDriver(capabilities); break; default: case FIREFOX: driver = new FirefoxDriver(capabilities); break; } break; } return driver; }