List of usage examples for org.openqa.selenium.support.events EventFiringWebDriver EventFiringWebDriver
public EventFiringWebDriver(final WebDriver driver)
From source file:cc.kune.selenium.SeleniumModule.java
License:GNU Affero Public License
@Override protected void configure() { WebDriver driver;//from w w w . j ava2 s . com switch (SeleniumConf.DRIVER) { case chrome: driver = createChromeDriver(); break; case firefox: default: driver = creatFirefoxDriver(); break; } final EventFiringWebDriver wrap = new EventFiringWebDriver(driver); wrap.register(new CustomWebDriverEventListener()); bind(WebDriver.class).toInstance(wrap); bind(ElementLocatorFactory.class).toInstance(new AjaxElementLocatorFactory(wrap, SeleniumConf.TIMEOUT)); // Page Objects here! bind(LoginPageObject.class).in(Singleton.class); bind(RegisterPageObject.class).in(Singleton.class); bind(EntityHeaderPageObject.class).in(Singleton.class); bind(ChatPageObject.class).in(Singleton.class); bind(SitePageObject.class).in(Singleton.class); final ResourceBundle english = ResourceBundle.getBundle("TestConstants", Locale.ENGLISH); final ResourceBundle spanish = ResourceBundle.getBundle("TestConstants", new Locale("es")); Locale.setDefault(Locale.ENGLISH); switch (SeleniumConf.LANG) { case es: bind(ResourceBundle.class).toInstance(spanish); break; case en: default: bind(ResourceBundle.class).toInstance(english); break; } }
From source file:ch.vorburger.webdriver.reporting.tests.SampleGoogleSearchReportTest.java
License:Apache License
@Test public void testGoogleSearch() { EventFiringWebDriver driverWithReporting; {//from w ww.j av a2 s. c om // System.setProperty("webdriver.chrome.driver", "/opt/google/chrome/chrome"); // WebDriver driver = new ChromeDriver(); WebDriver driver = new FirefoxDriver(); WebDriverEventListener loggingListener = new LoggingWebDriverEventListener(LOG_FILE_WRITER); ; driverWithReporting = new EventFiringWebDriver(driver); driverWithReporting.register(loggingListener); } driverWithReporting.get("http://www.google.com"); WebElement element = driverWithReporting.findElement(By.name("q")); element.sendKeys("Mifos"); element.submit(); (new WebDriverWait(driverWithReporting, 10)) .until(ExpectedConditions.presenceOfElementLocated(By.id("bfoot"))); driverWithReporting.quit(); }
From source file:com.coderoad.automation.core.manager.DriverManager.java
License:Open Source License
/** * Register driver.//from w ww . j a v a 2 s . c om * * @param webDriver the web driver */ public static void registerDriver(final WebDriver webDriver) { LogUtil.log("Registering Driver ", LogLevel.HIGH); final EventListener eventListener = new EventListener(); final EventFiringWebDriver efd = new EventFiringWebDriver(webDriver); efd.register(eventListener); webDriverThread.set(efd); }
From source file:com.consol.citrus.selenium.client.WebClient.java
License:Apache License
@Override public void addListener(WebDriverEventListener listener) { this.listeners.add(listener); EventFiringWebDriver wrapper = new EventFiringWebDriver(webDriver); logger.info("Add listener to webdriver: " + listener); wrapper.register(listener);/* w w w .j a v a2s. co m*/ }
From source file:com.consol.citrus.selenium.endpoint.SeleniumBrowser.java
License:Apache License
/** * Starts the browser and create local or remote web driver. */// ww w . ja v a 2s . co m public void start() { if (!isStarted()) { if (getEndpointConfiguration().getWebDriver() != null) { webDriver = getEndpointConfiguration().getWebDriver(); } else if (StringUtils.hasText(getEndpointConfiguration().getRemoteServerUrl())) { webDriver = createRemoteWebDriver(getEndpointConfiguration().getBrowserType(), getEndpointConfiguration().getRemoteServerUrl()); } else { webDriver = createLocalWebDriver(getEndpointConfiguration().getBrowserType()); } if (!CollectionUtils.isEmpty(getEndpointConfiguration().getEventListeners())) { EventFiringWebDriver wrapper = new EventFiringWebDriver(webDriver); log.info("Add event listeners to web driver: " + getEndpointConfiguration().getEventListeners().size()); for (WebDriverEventListener listener : getEndpointConfiguration().getEventListeners()) { wrapper.register(listener); } } } else { log.warn("Browser already started"); } }
From source file:com.ibm.watson.app.qaclassifier.selenium.drivers.SeleniumTestRunner.java
License:Open Source License
private WebDriver getDriver(Environment env, Device device, Browser browser) throws Exception { WebDriver driver = browser.getDriver(env); driver.manage().timeouts().implicitlyWait(5, TimeUnit.SECONDS); // Add a small delay to prevent timing issues in the browser EventFiringWebDriver driverWithEvents = new EventFiringWebDriver(driver); driverWithEvents.register(new WebDriverDelay()); device.configure(driverWithEvents);//from w w w . j a v a 2 s. co m return driverWithEvents; }
From source file:com.lohika.alp.selenium.AlpWebDriverFactory.java
License:Open Source License
public static WebDriver getDriver(String SeleniumUrl, DesiredCapabilities capabilities) throws MalformedURLException { Logger alpSeleniumLogger = Logger.getLogger("com.lohika.alp.selenium"); if (alpSeleniumLogger.getLevel() == null) alpSeleniumLogger.setLevel(Level.DEBUG); URL remoteAddress = new URL(SeleniumUrl); CommandExecutor commandExecutor = new HttpCommandExecutor(remoteAddress); WebDriver driver;/* w w w . j a va2s . co m*/ // Set name of WebDriver to be shown in log String name = capabilities.getBrowserName(); // Configure capabilities for webdriver to use js error catcher (only FF support now) WebDriverConfigurator webDriverConfigurator = new WebDriverConfigurator(name); capabilities = webDriverConfigurator.configure(capabilities); // Create remote WebDriver instance driver = new RemoteWebDriverTakeScreenshotFix(commandExecutor, capabilities); // Set factory for log objects LogElementsSeleniumFactory logObjectsFactory = new LogElementsSeleniumFactoryJAXB(); // Register WebDriver event listener to handle exceptions // TODO initialize factory separately LogElementsSeleniumFactory elementsFactory = new LogElementsSeleniumFactoryJAXB(); WebDriverEventListener listener = new LoggingWebDriverListener(elementsFactory); driver = new EventFiringWebDriver(driver); ((EventFiringWebDriver) driver).register(listener); // Wrap WebDriver with logging facility // FIXME Do not use 'instanceof' in logging decorators // Otherwise LoggingWebDriver can be only the last in the decorators chain driver = new LoggingWebDriver(driver, name, logObjectsFactory); return driver; }
From source file:com.mgmtp.jfunk.web.BaseWebDriverProvider.java
License:Apache License
@Override public WebDriver get() { String webDriverKey = config.get(WebConstants.WEBDRIVER_KEY); log.info("Creating new WebDriver instance with key '{}'...", webDriverKey); DesiredCapabilities capabilities = capabilitiesMap.get(webDriverKey); // we must disable WebDriver's overlapping check to be able to use our own topMostElementCheck flag capabilities.setCapability("overlappingCheckDisabled", true); //TODO this flag tells FirefoxDriver whether to run in legacy mode or in Marionette mode // => remove it, once the W3C actions API is correctly implemented in GeckoDriver Boolean isWebdriverFirefoxMarionette = config .getBoolean(FirefoxDriver.SystemProperty.DRIVER_USE_MARIONETTE); capabilities.setCapability(FirefoxDriver.MARIONETTE, isWebdriverFirefoxMarionette); // post event so users can customize capabilities eventBus.post(new BeforeWebDriverCreationEvent(webDriverKey, capabilities)); WebDriver webDriver = createWebDriver(capabilities); checkState(!(webDriver instanceof EventFiringWebDriver), "WebDrivers must not be wrapped explicitly into an EventFiringWebDriver. This is implicitly done by jFunk."); long implicitWaitSeconds = config.getLong(WebConstants.WEBDRIVER_IMPLICIT_WAIT_SECONDS, 0L); if (implicitWaitSeconds > 0) { webDriver.manage().timeouts().implicitlyWait(implicitWaitSeconds, TimeUnit.SECONDS); }// w w w. j a va 2 s .c om EventFiringWebDriver eventFiringWebDriver = new EventFiringWebDriver(webDriver); for (WebDriverEventListener listener : eventListeners) { eventFiringWebDriver.register(listener); } return eventFiringWebDriver; }
From source file:com.springer.omelet.driver.DriverFactory.java
License:Apache License
/*** * Return WebDriver either Remote/BrowserStack or local Browser based on * remoteFlag// w w w.j a v a 2 s . c o m * * @return */ public WebDriver intializeDriver() { if (remoteFlag) { RemoteBrowser rb = this.new RemoteBrowser(); webDriver = rb.returnRemoteDriver(); } else if (browser.toLowerCase().startsWith("f")) { LOGGER.debug("Returning firefox driver-Without Remote."); webDriver = new FirefoxDriver(); } else if (browser.toLowerCase().startsWith("i")) { System.setProperty("webdriver.ie.driver", ieServerPath); LOGGER.debug("Returning ie driver-Without Remote."); webDriver = new InternetExplorerDriver(); } else if (browser.toLowerCase().startsWith("c")) { System.setProperty("webdriver.chrome.driver", chromeServerPath); LOGGER.debug("Returning chrome driver-Without Remote."); webDriver = new ChromeDriver(); } else if (browser.toLowerCase().startsWith("h")) { LOGGER.info("Browser is HTMLUNIT"); webDriver = new HtmlUnitDriver(); } // For maximizing driver windows and wait if (webDriver != null) { if (this.isMobileTest == false) { webDriver.manage().window().maximize(); } webDriver.manage().timeouts().implicitlyWait(driverTimeOut, TimeUnit.SECONDS); } if (ishiglightElementFlag) { EventFiringWebDriver efw = new EventFiringWebDriver(webDriver); efw.register(new MyWebDriverListner()); webDriver = efw; } return webDriver; }
From source file:io.github.seleniumquery.browser.driver.DriverBuilder.java
License:Apache License
protected WebDriver attatchEventListner(WebDriver webDriver) { if (webDriverEventListener != null) { EventFiringWebDriver efwd = new EventFiringWebDriver(webDriver); efwd.register(webDriverEventListener); return efwd; } else {//from ww w .j a va 2 s . co m return webDriver; } }