List of usage examples for org.openqa.selenium.safari SafariDriver SafariDriver
public SafariDriver(SafariDriverService safariService)
From source file:okw.gui.adapter.selenium.webdriver.SeSafariApp.java
License:Open Source License
public void StartApp() { MyLogger.LogFunctionStartDebug("StartApp"); SafariOptions options = new SafariOptions(); options.setUseCleanSession(true); //if you wish safari to forget session everytime SeDriver.getInstance().driver = new SafariDriver(options); this.Init();/*from w w w .j a va 2 s .co m*/ MyLogger.LogFunctionEndDebug(); }
From source file:org.finra.jtaf.ewd.impl.DefaultSessionFactory.java
License:Apache License
@Override public WebDriver createInnerDriver(Map<String, String> options, DesiredCapabilities capabilities) throws Exception { ClientProperties properties = new ClientProperties(options.get("client")); WebDriver wd = null;//from www . j ava2 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.getBinaryPath(); if (path != null) { FirefoxBinary fireFox = getFFBinary(path); FirefoxProfile ffp = null; if (ffProfileFolder != null) { ffp = new FirefoxProfile(new File(ffProfileFolder)); } else { ffp = new FirefoxProfile(); } if (ffProfileFile != null) { addPreferences(ffp, ffProfileFile); } addPreferences(ffp); List<String> ffExtensions = properties.getFirefoxExtensions(); if (ffExtensions != null && ffExtensions.size() > 0) { addExtensionsToFirefoxProfile(ffp, ffExtensions); } wd = new FirefoxDriver(fireFox, ffp, desiredCapabilities); } else { wd = new FirefoxDriver(desiredCapabilities); } } else if (browser.equalsIgnoreCase("chrome")) { String webdriverChromeDriver = properties.getWebDriverChromeDriver(); if (webdriverChromeDriver != null) { System.setProperty("webdriver.chrome.driver", webdriverChromeDriver); } wd = new ChromeDriver(desiredCapabilities); } else if (browser.equalsIgnoreCase("safari")) { wd = new SafariDriver(desiredCapabilities); } else if (browser.equalsIgnoreCase("htmlunit")) { wd = new HtmlUnitDriver(desiredCapabilities); ((HtmlUnitDriver) wd).setJavascriptEnabled(true); } else { throw new Exception("Unsupported browser type: " + browser + ". Supported browser types: IE, Firefox, Chrome, Safari, HtmlUnit."); } // 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)); } } return wd; }
From source file:org.kuali.rice.testtools.selenium.WebDriverUtils.java
License:Educational Community License
/** * <p>//w w w . ja v a 2 s.co m * remote.public.driver set to chrome or firefox (null assumes firefox). * </p><p> * 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 * </p> * * @return WebDriver or null if unable to create */ public static WebDriver getWebDriver() { String driverParam = System.getProperty(HUB_DRIVER_PROPERTY); String hubParam = System.getProperty(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(getHubUrlString()), DesiredCapabilities.firefox()); } else if ("chrome".equalsIgnoreCase(driverParam)) { return new RemoteWebDriver(new URL(getHubUrlString()), DesiredCapabilities.chrome()); } } catch (MalformedURLException mue) { System.out.println(getHubUrlString() + " " + mue.getMessage()); mue.printStackTrace(); } } return null; }
From source file:org.mozilla.zest.core.v1.ZestClientLaunch.java
License:Mozilla Public License
@Override public String invoke(ZestRuntime runtime) throws ZestClientFailException { try {//w ww . java2s . c o m WebDriver driver = null; DesiredCapabilities cap = new DesiredCapabilities(); String httpProxy = runtime.getProxy(); if (httpProxy.length() > 0) { Proxy proxy = new Proxy(); proxy.setHttpProxy(httpProxy); proxy.setSslProxy(httpProxy); cap.setCapability(CapabilityType.PROXY, proxy); } if (capabilities != null) { for (String capability : capabilities.split("\n")) { if (capability != null && capability.trim().length() > 0) { String[] typeValue = capability.split("="); if (typeValue.length != 2) { throw new ZestClientFailException(this, "Invalid capability, expected type=value : " + capability); } cap.setCapability(typeValue[0], typeValue[1]); } } } if ("Firefox".equalsIgnoreCase(this.browserType)) { driver = new FirefoxDriver(cap); } else if ("Chrome".equalsIgnoreCase(this.browserType)) { driver = new ChromeDriver(cap); } else if ("HtmlUnit".equalsIgnoreCase(this.browserType)) { driver = new HtmlUnitDriver(DesiredCapabilities.htmlUnit().merge(cap)); } else if ("InternetExplorer".equalsIgnoreCase(this.browserType)) { driver = new InternetExplorerDriver(cap); } else if ("Opera".equalsIgnoreCase(this.browserType)) { driver = new OperaDriver(cap); } else if ("PhantomJS".equalsIgnoreCase(this.browserType)) { driver = new PhantomJSDriver(cap); } else if ("Safari".equalsIgnoreCase(this.browserType)) { driver = new SafariDriver(cap); } else { // See if its a class name try { Class<?> browserClass = this.getClass().getClassLoader().loadClass(this.browserType); Constructor<?> cons = browserClass.getConstructor(Capabilities.class); if (cons != null) { driver = (WebDriver) cons.newInstance(cap); } else { throw new ZestClientFailException(this, "Unsupported browser type: " + this.getBrowserType()); } } catch (ClassNotFoundException e) { throw new ZestClientFailException(this, "Unsupported browser type: " + this.getBrowserType()); } } runtime.addWebDriver(getWindowHandle(), driver); if (this.url != null) { driver.get(runtime.replaceVariablesInString(this.url, true)); } return getWindowHandle(); } catch (Exception e) { throw new ZestClientFailException(this, e); } }
From source file:org.musetest.selenium.providers.SafariDriverProvider.java
License:Open Source License
@Override public WebDriver getDriver(SeleniumBrowserCapabilities capabilities, MuseExecutionContext context) { if (!capabilities.getName().equals(BrowserType.SAFARI)) return null; synchronized (SafariDriverProvider.class) { return new SafariDriver(capabilities.toDesiredCapabilities()); }/*from w w w . j ava 2 s . c o m*/ }
From source file:org.nvonop.selenium.framework.Browser.java
License:Open Source License
/** * This method initialises the ThreadLocal WebDriver object according to the * supplied parameters to enable tests to run on a users local machine. *//*from w ww .j a v a 2s . com*/ private void setLocalWebdriver() { DesiredCapabilities capabilities = new DesiredCapabilities(); capabilities.setJavascriptEnabled(true); capabilities.setCapability("handlesAlerts", true); switch (getBrowserId(browser)) { case 0: capabilities.setCapability(InternetExplorerDriver.INTRODUCE_FLAKINESS_BY_IGNORING_SECURITY_DOMAINS, Boolean.valueOf(System.getProperty("IGNORE_SECURITY_DOMAINS", "false"))); driver.set(new InternetExplorerDriver(capabilities)); break; case 1: driver.set(new FirefoxDriver(capabilities)); break; case 2: driver.set(new SafariDriver(capabilities)); break; case 3: driver.set(new ChromeDriver(capabilities)); break; default: throw new WebDriverException("Browser not found: " + browser); } }
From source file:org.nvonop.selenium.framework.utilities.BaseTest.java
License:Open Source License
/** * This method initialises the ThreadLocal WebDriver object according to the * supplied parameters to enable tests to run on a users local machine. * * @param browser This can be set to "chrome", "internet explorer" or "firefox" * @param version This should be set to reflect the browser required. It is only * used when matching capabilities for a RemoteWebDriver object * however./*from w w w .j av a 2 s . co m*/ * @param platform This should be set to whatever platform the test is required * to run on e.g. "WINDOWS", "MAC", "LINUX". It is only used when * matching capabilities for a RemoteWebDriver object however. */ public void setLocalWebdriver(String browser, String version, String platform) { DesiredCapabilities capabilities = new DesiredCapabilities(); capabilities.setJavascriptEnabled(true); capabilities.setCapability("handlesAlerts", true); switch (getBrowserId(browser)) { case 0: capabilities.setCapability(InternetExplorerDriver.INTRODUCE_FLAKINESS_BY_IGNORING_SECURITY_DOMAINS, Boolean.valueOf(System.getProperty("IGNORE_SECURITY_DOMAINS", "false"))); driver.set(new InternetExplorerDriver(capabilities)); break; case 1: driver.set(new FirefoxDriver(capabilities)); break; case 2: driver.set(new SafariDriver(capabilities)); break; case 3: driver.set(new ChromeDriver(capabilities)); break; default: throw new WebDriverException("Browser not found: " + browser); } }
From source file:org.zaproxy.zap.extension.selenium.ExtensionSelenium.java
License:Apache License
private static WebDriver getWebDriverImpl(Browser browser, String proxyAddress, int proxyPort) { DesiredCapabilities capabilities = new DesiredCapabilities(); if (proxyAddress != null) { String httpProxy = proxyAddress + ":" + proxyPort; Proxy proxy = new Proxy(); proxy.setHttpProxy(httpProxy);//from w w w . j a v a2 s . c o m proxy.setSslProxy(httpProxy); capabilities.setCapability(CapabilityType.PROXY, proxy); } switch (browser) { case CHROME: return new ChromeDriver(capabilities); case FIREFOX: return new FirefoxDriver(capabilities); case HTML_UNIT: return new HtmlUnitDriver(capabilities); case INTERNET_EXPLORER: capabilities.setCapability(InternetExplorerDriver.IE_USE_PRE_PROCESS_PROXY, true); return new InternetExplorerDriver(capabilities); /* No longer supported in the Selenium standalone jar * need to decide if we support older Opera versions case OPERA: OperaDriver driver = new OperaDriver(capabilities); if (proxyAddress != null) { driver.proxy().setProxyLocal(true); // XXX Workaround, in operadriver <= 1.5 the HTTPS proxy settings are not set according to desired capabilities // For more details see OperaProxy.parse(Proxy) driver.proxy().setHttpsProxy(proxyAddress + ":" + proxyPort); } return driver; */ case PHANTOM_JS: final ArrayList<String> cliArgs = new ArrayList<>(4); cliArgs.add("--ssl-protocol=any"); cliArgs.add("--ignore-ssl-errors=yes"); cliArgs.add("--webdriver-logfile=" + Constant.getZapHome() + "/phantomjsdriver.log"); cliArgs.add("--webdriver-loglevel=WARN"); capabilities.setCapability(PhantomJSDriverService.PHANTOMJS_CLI_ARGS, cliArgs); return new PhantomJSDriver(capabilities); case SAFARI: return new SafariDriver(capabilities); default: throw new IllegalArgumentException("Unknown browser: " + browser); } }