List of usage examples for org.openqa.selenium WebDriver manage
Options manage();
From source file:db.Db.java
static boolean regAccount(String a[][], String referralUrl, int f, WebDriver driver) throws InterruptedException { String name = a[f][0], shurname = a[f][1], password = a[f][2], mail = a[f][3]; boolean ispresent = false, registered = false; String gsUrl = "https://www.dropbox.com/gs"; driver.get(referralUrl);/* ww w .j a va 2s .c o m*/ for (int second = 0;; second++) { if (second >= 30) { System.out.println("Connection timeout"); break; } //ispresent try { driver.findElement(By.xpath("//div[2]/div/div/form/div[2]/div[2]/input")); ispresent = true; } catch (NoSuchElementException e) { ispresent = false; } try { if (ispresent) break; } catch (Exception e) { } Thread.sleep(1000); } Thread.sleep(100); if (ispresent) { driver.findElement(By.xpath("//div[2]/div/div/form/div[2]/div[2]/input")).clear(); driver.findElement(By.xpath("//div[2]/div/div/form/div[2]/div[2]/input")).sendKeys(name); driver.findElement(By.xpath("//div[2]/div/div/form/div[3]/div[2]/input")).clear(); driver.findElement(By.xpath("//div[2]/div/div/form/div[3]/div[2]/input")).sendKeys(shurname); driver.findElement(By.xpath("//div[5]/div[2]/input")).clear(); driver.findElement(By.xpath("//div[5]/div[2]/input")).sendKeys(password); driver.findElement(By.xpath("//div[2]/div/div/form/div[4]/div[2]/input")).clear(); driver.findElement(By.xpath("//div[2]/div/div/form/div[4]/div[2]/input")).sendKeys(mail); driver.findElement(By.xpath("//div[6]/input")).click(); //Check tos agree Thread.sleep(100); driver.findElement(By.xpath("//div[2]/div/div/form/button")).click(); //Submit register form for (int second = 0;; second++) { if (second >= 15) { System.out.println("Submitting form timeout"); break; } if (gsUrl.equals(driver.getCurrentUrl())) registered = true; try { if (registered) break; } catch (Exception e) { } Thread.sleep(1000); } } int n = f + 1; if (registered) System.out.print(""); else System.out.print("x"); driver.manage().deleteAllCookies(); return registered; //returns true or false }
From source file:db.Db.java
public static void main(String[] args) throws InterruptedException, Exception { // TODO code application logic here //SETUP/*ww w .j a v a2 s .com*/ WebDriver driver; String referralUrl, accounts[][]; String mSuffix = new String(); double space = 0, nAccounts; int needAccounts, creAccounts, f; StringBuffer verificationErrors = new StringBuffer(); driver = new FirefoxDriver(); // driver = new HtmlUnitDriver(); driver.manage().timeouts().implicitlyWait(30, TimeUnit.SECONDS); referralUrl = "https://www.dropbox.com/referrals/NTM2OTAyMjIyMjk?src=global9"; mSuffix = "@gmail.com"; space = 16.250; space = (Math.floor(space * 2) / 2); //trunk number to .0 or .5 needAccounts = (int) ((18 - space) * 2); //number of accounts needed creAccounts = 0; //number of accounts created accounts = new String[needAccounts][4]; //accounts credentials matrix //GENERATE ACCOUNTS for (f = 0; f < accounts.length; f++) genAccount(accounts, mSuffix, f); //REGISTER int regAttempts = 0; System.out.print("Registering accounts => "); for (f = 0; f < accounts.length; f++) { while (!regAccount(accounts, referralUrl, f, driver) && regAttempts < 3) { regAttempts++; genAccount(accounts, mSuffix, f); } if (regAttempts < 3) creAccounts++; else System.out.println("Registration failed 3 consecutive times. Aborting"); } //end for if (creAccounts == needAccounts) System.out.println("\n" + creAccounts + " DROPBOX ACCOUNTS CREATED SUCCESFULLY!! :D :D"); //TEARDOWN driver.quit(); }
From source file:de.learnlib.alex.data.entities.actions.misc.SetVariableByCookieAction.java
License:Apache License
@Override public ExecuteResult execute(ConnectorManager connector) { VariableStoreConnector storeConnector = connector.getConnector(VariableStoreConnector.class); WebServiceConnector webServiceConnector = connector.getConnector(WebServiceConnector.class); WebSiteConnector webSiteConnector = connector.getConnector(WebSiteConnector.class); try {/*from w ww . j a v a2s . c o m*/ String cookieValue = null; if (cookieType == CookieType.WEB) { WebDriver driver = webSiteConnector.getDriver(); WebDriver.Options manage = driver.manage(); Cookie cookie = manage.getCookieNamed(value); if (cookie != null) { cookieValue = cookie.getValue(); } } else if (cookieType == CookieType.REST) { Map<String, NewCookie> cookies = webServiceConnector.getCookies(); javax.ws.rs.core.Cookie cookie = cookies.get(value); if (cookie != null) { cookieValue = cookie.getValue(); } } else { LOGGER.warn(LoggerMarkers.LEARNER, "Could not set the variable '{}' to the cookie '{}' because the type '{}' is not supported!", name, value, cookieType); return getFailedOutput(); } if (cookieValue != null) { storeConnector.set(name, cookieValue); LOGGER.info(LoggerMarkers.LEARNER, "Set the variable '{}' to the value '{}' of the cookie '{}:{}' ", name, cookieValue, cookieType, value); return getSuccessOutput(); } else { LOGGER.info(LoggerMarkers.LEARNER, "Could not set the variable '{}' to the cookie '{}:{}' because the cookie was not found!", name, cookieType, value); return getFailedOutput(); } } catch (IllegalStateException | NoSuchElementException e) { LOGGER.warn(LoggerMarkers.LEARNER, "Could not set the variable '{}' to the cookie '{}' because of an error.", name, value, e); return getFailedOutput(); } }
From source file:de.learnlib.alex.data.entities.actions.misc.SetVariableByCookieActionTest.java
License:Apache License
private WebSiteConnector createWebSiteConnectorMock(Cookie cookie) { WebDriver.Options options = mock(WebDriver.Options.class); given(options.getCookieNamed(COOKIE_NAME)).willReturn(cookie); WebDriver driver = mock(WebDriver.class); given(driver.manage()).willReturn(options); WebSiteConnector webSiteConnector = mock(WebSiteConnector.class); given(webSiteConnector.getDriver()).willReturn(driver); return webSiteConnector; }
From source file:de.learnlib.alex.learning.entities.webdrivers.AbstractWebDriverConfig.java
License:Apache License
/** * Handle timeouts and browser dimensions. * * @param driver/* w w w . j a va 2s.co m*/ * The web driver. */ protected void manage(final WebDriver driver) { driver.manage().timeouts().pageLoadTimeout(pageLoadTimeout, TimeUnit.SECONDS); driver.manage().timeouts().setScriptTimeout(scriptTimeout, TimeUnit.SECONDS); if (implicitlyWait > 0) { driver.manage().timeouts().implicitlyWait(implicitlyWait, TimeUnit.SECONDS); } if (height > 0 && width > 0) { driver.manage().window().setSize(new Dimension(width, height)); } }
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; 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;// ww w .j a va 2 s . c o m } 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:de.tntinteractive.portalsammler.sources.HanVBSourceV1.java
License:Open Source License
@Override public Pair<Integer, Integer> poll(final SourceSettings settings, final UserInteraction gui, final SecureStore store) throws Exception { final WebDriver driver = this .createDriver("https://www.hannoversche-volksbank.de/ptlweb/WebPortal?bankid=0744"); final WebElement userField = driver.findElement(By.id("vrkennungalias")); userField.sendKeys(settings.get(USER, gui)); final WebElement passwordField = driver.findElement(By.id("pin")); passwordField.sendKeys(settings.get(PASSWORD, gui)); passwordField.submit();//from w w w . j a va 2 s . co m waitForPresence(driver, By.linkText("Postkorb")); int newDocs = 0; int knownDocs = 0; try { clickLink(driver, "Postkorb"); waitForPresence(driver, By.name("confirmDeleteMultiMessage")); final WebElement form = driver.findElement(By.name("confirmDeleteMultiMessage")); final WebElement tbody = form.findElement(By.tagName("tbody")); final List<String> links = new ArrayList<String>(); for (final WebElement tr : tbody.findElements(By.tagName("tr"))) { final List<WebElement> tds = tr.findElements(By.tagName("td")); final WebElement link = tds.get(2).findElement(By.tagName("a")); links.add(link.getAttribute("href")); } for (final String link : links) { driver.get(link); final DocumentInfo info = DocumentInfo.create(this.getId(), DocumentFormat.TEXT); final StringBuilder content = new StringBuilder(); driver.manage().timeouts().implicitlyWait(0, TimeUnit.SECONDS); final WebElement fieldset = driver.findElement(By.tagName("fieldset")); for (final WebElement div : fieldset.findElements(By.tagName("div"))) { if (this.isLabeled(div, "Eingang")) { info.setDate(this.parseTimestamp(div.findElement(By.className("gad-field-box")).getText())); } else if (this.isLabeled(div, "Betreff")) { final WebElement data = div.findElement(By.className("gad-field-box")); info.addKeywords(data.findElement(By.tagName("span")).getAttribute("title")); } else if (this.isNotLabeled(div)) { content.append(div.getText()); } } driver.manage().timeouts().implicitlyWait(WAIT_TIME, TimeUnit.SECONDS); if (!store.containsDocument(info)) { store.storeDocument(info, content.toString().getBytes("UTF-8")); newDocs++; } else { knownDocs++; } } } finally { clickLink(driver, "Logout"); } return Pair.of(newDocs, knownDocs); }
From source file:dk.netarkivet.systemtest.performance.DatabaseMigrationSanityTest.java
License:Open Source License
/** * Basic sanity test that the current production database can be consistently upgraded with the latest NAS software. * This test is designed to be cheap to run so it can easily be tested on any snapshot. *//* ww w .j av a 2s. c om*/ @Test(groups = { "performancetest" }) public void dbMigrationSanityTest() throws Exception { WebDriver driver = new FirefoxDriver(); TestGUIController TestGUIController = new TestGUIController(testController); driver.manage().timeouts().implicitlyWait(1, TimeUnit.SECONDS); String baseUrl = testController.ENV.getGuiHost() + ":" + testController.ENV.getGuiPort(); PageHelper.initialize(driver, baseUrl); TestGUIController.waitForGUIToStart(60); addFixture("Opening NAS front page."); PageHelper.gotoPage(PageHelper.MenuPages.AliasSummary.Frontpage); addStep("Ingest some domains", "The domains should be created."); DomainWebTestHelper.createDomain(new String[] { "netarkivet.dk", "kb.dk", "kaarefc.dk" }); WebElement element = null; try { element = driver.findElement(By.tagName("h4")); } catch (Exception e) { element = driver.findElement(By.id("message")); } NASAssert.assertTrue(element.getText().contains("These domains have now been created") || element.getText().contains("already exist")); addStep("Opening bitpreservation section of GUI.", "The page should open and show the number of files in the archive."); driver.findElement(By.linkText("Bitpreservation")).click(); driver.getPageSource().matches("Number of files:.*[0-9]{2}"); addStep("Create a selective harvest", "The harvest should be created successfully and be listed in the HD list"); String harvestId = "harvest_" + (new Date()).getTime(); SelectiveHarvestPageHelper.createSelectiveHarvest(harvestId, "a harvest", new String[] { "netarkivet.dk", "kb.dk" }); NASAssert.assertTrue(driver.getPageSource().contains(harvestId), harvestId + " not found in harvest list after creation"); }
From source file:ec.edu.utpl.navegadorserendipity.Navegador.java
public static void main(String[] args) throws AWTException { WebDriver driver = new FirefoxDriver(); driver.manage().window().maximize(); list.clear();//from w ww . j a v a2s . c om list.add("java"); list.add("estadistica"); list.add("fsica"); list.add("matematicas"); list.add("quimica"); list.add("biologa"); list.add("anatoma"); list.add("electrnica"); list.add("finanzas"); list.add("politica"); list.add("calculo"); list.add("analisis de datos"); list.add("gastronomy"); list.add("robotica"); list.add("robotica"); list.add("fisiologia"); list.add("science"); list.add("english"); list.add("post-secondary"); list.add("management"); list.add("history"); list.add("mathematics"); list.add("ciencias"); list.add("electrical engineering and computer science"); list.add("literature"); list.add("health"); list.add("economics"); list.add("urban studies and planning"); list.add("education"); list.add("engineering"); list.add("caminos"); list.add("architecture"); list.add("ciencias sociales y juridicas"); list.add("culture"); list.add("political science"); list.add("humanities"); list.add("physics"); list.add("biology"); list.add("politics"); list.add("downloadable documents"); list.add("earth atmospheric and planetary sciences"); list.add("ingenieria"); list.add("arquitectura"); list.add("mechanical engineering"); list.add("technology"); list.add("writing"); list.add("arts and humanities"); list.add("brain and cognitive sciences"); list.add("design"); list.add("enginyeria"); list.add("sciences"); list.add("policy"); list.add("environment"); list.add("foreign languages and literatures"); list.add("economia"); list.add("matematica aplicada"); list.add("audio"); list.add("language"); list.add("ciencias de la salud"); list.add("derecho"); list.add("linguistics and philosophy"); list.add("ensenanzas tecnicas"); list.add("lenguajes y sistemas informaticos"); list.add("civil and environmental engineering"); list.add("chemistry"); list.add("gender"); list.add("sociales"); list.add("communication"); list.add("medicine"); list.add("ciencias sociales"); list.add("faculty"); list.add("philosophy"); list.add("media"); list.add("arquitectura y tecnologia de computadores"); list.add("general"); list.add("construccion"); list.add("social sciences"); list.add("anthropology"); list.add("aeronautics and astronautics"); list.add("civil"); list.add("health and social care"); list.add("race"); list.add("international"); list.add("juridicas"); list.add("globalization"); list.add("writing and humanistic studies"); list.add("ethics"); list.add("electronica"); list.add("special programs"); list.add("audio lectures"); list.add("learning"); list.add("music and theater arts"); list.add("public"); list.add("informatica tecnologia i multimedia"); list.add("social"); list.add("business and management"); list.add("analysis"); list.add("economia aplicada"); list.add("society"); list.add("statistics"); list.add("religion"); list.add("mathematics and statistics"); list.add("identity"); list.add("video"); list.add("materials science and engineering"); list.add("centre for higher education development"); list.add("ocw"); list.add("business"); list.add("energy"); list.add("innovation"); list.add("development"); list.add("psychology"); list.add("text/html webpages"); list.add("matematicas"); list.add("educacion"); list.add("law"); list.add("internet"); list.add("engineering and technology"); list.add("health sciences and technology"); list.add("structure"); list.add("media arts and sciences"); list.add("film"); list.add("disease"); list.add("cursos gratuitos"); list.add("information"); list.add("ingenieria informatica"); list.add("notre dame"); list.add("sistemas"); list.add("thermodynamics"); list.add("ciencia"); list.add("geologica"); list.add("science technology and society"); list.add("biotechnology"); list.add("evolution"); list.add("open"); list.add("health sciences"); list.add("engineering systems division"); list.add("courseware"); list.add("research"); list.add("quimica"); list.add("telecomunicacions"); list.add("poverty"); list.add("fisica"); list.add("readings"); list.add("urban planning"); list.add("planning"); list.add("nuclear engineering"); list.add("reading"); list.add("poetry"); list.add("didactica y organizacion escolar"); list.add("informatica"); list.add("mecanica"); list.add("languages"); list.add("computacion"); list.add("scotland"); list.add("analisis matematico"); list.add("arquitectura e ingenieria"); list.add("arts"); list.add("studies"); list.add("algebra"); list.add("resources"); list.add("genetics"); list.add("narrative"); list.add("dna"); list.add("psicologia"); list.add("art"); list.add("systems"); list.add("power"); list.add("china"); list.add("global"); list.add("risk"); list.add("humanidades"); list.add("life"); list.add("biological engineering"); list.add("theory"); list.add("teoria de la senal y comunicaciones"); list.add("supplemental"); list.add("war"); list.add("artificial"); list.add("filologia inglesa"); list.add("ingenieria mecanica"); list.add("ingenieria telematica"); list.add("political"); list.add("analisis"); list.add("marketing"); list.add("probability"); list.add("community"); list.add("sexuality"); list.add("democracy"); list.add("materials"); list.add("comunicacion"); list.add("dibujo"); list.add("public policy"); list.add("teaching"); list.add("strategy"); list.add("biostatistics"); list.add("construction"); list.add("organizacion"); list.add("geesoer"); list.add("environmental"); list.add("human"); list.add("ingenieria de sistemas y automatica"); list.add("economia financiera y contabilidad"); list.add("training materials"); list.add("decision making"); list.add("music"); list.add("salud"); list.add("artificial intelligence"); list.add("ingenieria quimica"); list.add("artes y humanidades"); list.add("behavior"); list.add("fisica aplicada"); list.add("brain"); list.add("matematiques"); list.add("inteligencia"); list.add("grammar"); list.add("chemical engineering"); list.add("information technology"); list.add("fine art"); list.add("for"); list.add("memory"); list.add("modeling"); list.add("programacion"); list.add("cad"); list.add("calculo"); list.add("optimization"); list.add("tecnologia electronica"); list.add("united states"); list.add("school"); list.add("finance"); list.add("workshop"); list.add("government"); list.add("europe"); list.add("agriculture"); list.add("estadistica e investigacion operativa"); list.add("performance"); list.add("digital"); list.add("public lecture"); list.add("water"); list.add("gipca"); list.add("climate change"); list.add("composition"); list.add("linguistics"); list.add("matlab"); list.add("centre for open learning"); list.add("competition"); list.add("latin america"); list.add("ingenieria y arquitectura"); list.add("diversos"); list.add("economic development"); list.add("africa"); list.add("tecnicas"); list.add("educacion fisica y deportiva"); list.add("empresa"); list.add("conference"); list.add("informacio i comunicacio"); list.add("transportation"); list.add("conflict"); list.add("sociologia"); list.add("linear algebra"); list.add("class"); list.add("leadership"); list.add("ethnicity"); list.add("computer"); list.add("psicologia social"); list.add("story-telling"); list.add("tectonics"); list.add("presentations"); list.add("international relations"); list.add("diversity"); list.add("genes"); list.add("stress"); list.add("sustainability"); list.add("bio_chemistry"); list.add("textbooks"); list.add("software"); list.add("design process"); list.add("computation"); list.add("laboratory"); list.add("economic"); list.add("ecologia"); list.add("nature"); list.add("perception"); list.add("chinese"); list.add("shakespeare"); list.add("photography"); list.add("methods"); list.add("lengua espanola"); list.add("natural"); list.add("other"); list.add("gestion"); list.add("earth"); list.add("administracion"); list.add("psicologia basica"); list.add("informaticos"); list.add("investigacion"); list.add("fiction"); list.add("novel"); list.add("didactica de la expresion corporal"); list.add("entrepreneurship"); list.add("theater"); list.add("manufacturing"); list.add("diffusion"); list.add("rna"); list.add("ecology"); list.add("television"); list.add("programming"); list.add("modern"); list.add("control"); list.add("population"); list.add("nutrition"); list.add("ukoer"); list.add("representation"); list.add("cities"); list.add("desarrollo"); list.add("sociology"); list.add("industrialization"); list.add("ciencies"); list.add("structures"); list.add("simulation"); list.add("intellectual property"); list.add("sampling"); list.add("lecture notes"); list.add("security"); list.add("translation"); list.add("cognition"); list.add("cursos"); list.add("enfermeria"); list.add("networks"); list.add("aprendizaje"); list.add("uncertainty"); list.add("global warming"); list.add("matrices"); list.add("mammals"); list.add("communications"); list.add("speaking"); list.add("game theory"); list.add("spanish"); list.add("vision"); list.add("infectious"); list.add("drama"); list.add("comparative media studies"); list.add("urban"); list.add("commerce"); list.add("space"); list.add("pedagogia"); list.add("urban design"); list.add("centre for educational technology"); list.add("aplicada"); list.add("america"); list.add("derecho del trabajo y de la seguridad social"); list.add("teaching_techniques"); list.add("cursos de profesional"); list.add("e-motion"); list.add("nationalism"); list.add("biblioteconomia y documentacion"); list.add("biblioteconomia i documentacio"); list.add("family"); list.add("ensenanza"); list.add("algorithms"); list.add("immigration"); list.add("food"); list.add("center"); list.add("energia"); list.add("housing"); list.add("risk management"); list.add("renaissance"); list.add("comunicacion audiovisual y publicidad"); list.add("organitzacio"); list.add("ingenierias"); list.add("multi-media"); list.add("vocabulary"); list.add("quantum mechanics"); list.add("creativity"); list.add("gis"); list.add("negotiation"); list.add("courses"); list.add("cancer"); list.add("conversation"); list.add("sensors"); list.add("calculus"); list.add("radiation"); list.add("asia"); list.add("political theory"); list.add("proyectos de ingenieria"); list.add("molecular biology"); list.add("modelling"); list.add("case studies"); list.add("diseno"); list.add("documentacion"); list.add("public health"); list.add("d'empreses"); list.add("ciencias experimentales"); list.add("military"); list.add("pricing"); list.add("didactica"); list.add("economica"); list.add("matematica"); list.add("capitalism"); list.add("espanol"); list.add("funciones"); list.add("lenguajes"); list.add("women"); list.add("contabilidad"); list.add("logic"); list.add("medicina"); list.add("aesthetics"); list.add("estructura"); list.add("historia"); list.add("cultural"); list.add("contemporary"); list.add("japan"); list.add("electromagnetism"); list.add("human rights"); list.add("migration"); list.add("planificacion"); list.add("ciencias juridicas"); list.add("maths_modelling"); list.add("derecho constitucional"); list.add("pollution"); list.add("regression"); list.add("aristotle"); list.add("economy"); list.add("synthesis"); list.add("american"); list.add("feminism"); list.add("decision-making"); list.add("neuroscience"); list.add("dynamic programming"); list.add("sustainable development"); list.add("plasticity"); list.add("diabetes"); list.add("monitoring"); list.add("models"); list.add("quimica fisica"); list.add("place"); list.add("integration"); list.add("data"); list.add("computing"); list.add("film and media studies"); list.add("mechanics"); list.add("artes"); list.add("student work"); list.add("welfare"); list.add("dynamics"); list.add("animals"); list.add("estado"); list.add("zoologia"); list.add("gestao empresarial"); list.add("stability"); list.add("relationships"); list.add("audio-visual"); list.add("intercultural and diversity studies"); list.add("cristalografia y mineralogia"); list.add("video lectures"); list.add("entropy"); list.add("holiday"); list.add("differential equations"); list.add("expresion grafica en la ingenieria"); list.add("cienciasss"); list.add("tic"); list.add("materiales"); list.add("calidad"); list.add("games"); list.add("gene expression"); list.add("noise"); list.add("genomics"); list.add("python"); list.add("care"); list.add("training"); list.add("differentiation"); list.add("infrastructure"); list.add("organizacion de empresas"); list.add("neighborhood"); list.add("discussion"); list.add("plato"); list.add("advertising"); list.add("institutions"); list.add("teamwork"); list.add("project management"); list.add("geography"); list.add("slavery"); list.add("mandarin"); list.add("listening"); list.add("french"); list.add("organization"); list.add("termodinamica"); list.add("derecho civil"); list.add("india"); list.add("estructuras"); list.add("trabajo"); list.add("reproduction"); list.add("comunicacio audiovisual i publicitat"); list.add("fisiologia"); list.add("filosofia"); list.add("ingenieria electrica"); list.add("world"); list.add("sex"); list.add("computers"); list.add("terrorism"); list.add("child"); list.add("formacion"); list.add("cooperacio"); list.add("text"); list.add("objects"); list.add("historical"); list.add("rhetoric"); list.add("geografia humana"); list.add("integracion"); list.add("production"); list.add("markets"); list.add("econometrics"); list.add("functions"); list.add("information systems"); list.add("and ocean sciences"); list.add("product design"); list.add("microeconomia"); list.add("equity"); list.add("cooperation"); list.add("data structures"); list.add("bible"); list.add("function"); list.add("on"); list.add("climate"); list.add("collaboration"); list.add("modernism"); list.add("knowledge"); list.add("sistema"); list.add("quimica organica"); list.add("data analysis"); list.add("derecho administrativo"); list.add("cosmology"); list.add("landscape"); list.add("ingenieria agroforestal"); list.add("racism"); list.add("product development"); list.add("industry"); list.add("mass"); list.add("seguridad"); list.add("letters"); list.add("electricidad"); list.add("classical music"); list.add("seminar"); list.add("sociedad"); list.add("proteins"); list.add("motion"); list.add("experiment"); list.add("oral presentation"); list.add("cloning"); list.add("bioinformatics"); Robot robot = new Robot(); // Robot class throws AWT Exception while (true) { Random random = new Random(); int aleatorio_app = random.nextInt(2); //int aleatorio_app = 1; if (aleatorio_app == 0) { driver.get("http://j4loxa.com/datalab/serendipity/"); robot.delay(10000); driver.get("http://serendipity.utpl.edu.ec/"); robot.delay(5000); //element.sendKeys("java"); //for (int i = 0; i < list.size(); i++) { int value = random.nextInt(list.size()); System.out.println("aleaotrio: " + value); WebElement element = driver.findElement(By.name("q")); String word = list.get(value); type(word, element, robot); element.submit(); System.out.println("Page title is: " + driver.getTitle()); robot.delay(5000); WebElement txt = driver.findElement(By.className("text-success")); int num = 0; for (StringTokenizer stringTokenizer = new StringTokenizer(txt.getText()); stringTokenizer .hasMoreTokens();) { String token = stringTokenizer.nextToken(); num = Integer.parseInt(token); break; } int numveces = 0; if (num > 16) { numveces = 16; } else if (num > 0) { numveces = num; } System.out.println(">>>>>>>>>>>>>>> " + txt.getText()); JavascriptExecutor jsx = (JavascriptExecutor) driver; //int y = 350; for (int j = 0; j < numveces; j++) { jsx.executeScript("window.scrollBy(0, 350)", ""); robot.delay(2000); //y += 350; } //jsx.executeScript("window.scroll(0, -250);"); for (int j = 0; j < numveces * 8; j++) { jsx.executeScript("window.scrollBy(0, -50)", ""); robot.delay(250); } jsx.executeScript("window.scroll(0, -50);"); if (num > 0) { List<WebElement> elementos = driver.findElements(By.xpath("//h4[@property='title']")); System.out.println(elementos.size()); int aleatorio2 = random.nextInt(elementos.size()); WebElement get = elementos.get(aleatorio2); WebElement ele = get.findElement(By.tagName("a")); System.out.println(ele.getAttribute("href")); ele.sendKeys(""); robot.delay(5000); WebDriverWait wait = new WebDriverWait(driver, 1); driver.get(ele.getAttribute("href")); robot.delay(10000); wait.until(ExpectedConditions.presenceOfElementLocated(By.className("accordion-group"))); WebElement acordeon = driver.findElement(By.className("accordion-group")); List<WebElement> acs = acordeon.findElements(By.className("accordion-toggle")); for (int j = 0; j < acs.size(); j++) { WebElement get1 = acs.get(j); //System.out.println("acordeon: "+get1.getAttribute("href")); get1.click(); robot.delay(5000); } // WebElement primer = driver.findElement(By.xpath("//div[@class='span9']")); // WebElement seg = primer.findElement(By.xpath("//div[@class='span6 thumbnail']")); // WebElement ter = seg.findElement(By.xpath("//a[@class='fancybox fancybox.iframe']")); // System.out.println(ter.getAttribute("href")); // // ter.sendKeys(""); // robot.delay(5000); // driver.get(ter.getAttribute("href")); // robot.delay(10000); // driver.navigate().back(); // robot.delay(10000); } WebElement reset = driver.findElement(By.id("resetBtn")); JavascriptExecutor executor = (JavascriptExecutor) driver; executor.executeScript("arguments[0].click();", reset); // if (i < list.size() - 1) { // driver.get("http://j4loxa.com/datalab/serendipity/"); // robot.delay(10000); // driver.get("http://serendipity.utpl.edu.ec/"); // robot.delay(5000); // } //} } else if (aleatorio_app == 10) { driver.get("http://j4loxa.com/datalab/ocwtagrecommender/"); robot.delay(10000); driver.get("http://j4loxa.com/snaocwservices/"); robot.delay(5000); int value = random.nextInt(list.size()); WebElement element = driver.findElement(By.id("tag")); String word = list.get(value); type(word, element, robot); robot.delay(1000); WebDriverWait wait = new WebDriverWait(driver, 1); wait.until(ExpectedConditions.presenceOfElementLocated(By.id("ui-id-1"))); element.sendKeys(Keys.ARROW_DOWN); robot.keyPress(KeyEvent.VK_ENTER); element.sendKeys(Keys.ENTER); robot.delay(1000); //robot.keyPress(KeyEvent.VK_RIGHT); //wait.until(ExpectedConditions.presenceOfElementLocated(By.id("ui-id-1"))); //WebElement ele = driver.findElement(By.id("ui-id-1")); //ele.click(); //ele.click(); //robot.keyPress(KeyEvent.VK_ENTER); System.out.println("Page title is: " + driver.getTitle()); robot.delay(15000); List<WebElement> eles = driver.findElements(By.tagName("text")); System.out.println(">>>>>> " + eles.size()); if (eles.size() > 0) { eles.get(0).click(); robot.delay(10000); } } else if (aleatorio_app == 1) { driver.get("http://ambar.utpl.edu.ec/about"); robot.delay(10000); int aleatorio_ambar = random.nextInt(3); if (aleatorio_ambar == 0) { driver.get("http://ambar.utpl.edu.ec/dataset"); robot.delay(5000); List<WebElement> li = driver.findElements(By.className("dataset-heading")); System.out.println(">>>>>>>>>>>" + li.size()); JavascriptExecutor jsx = (JavascriptExecutor) driver; for (int j = 0; j < li.size(); j++) { jsx.executeScript("window.scrollBy(0, 150)", ""); robot.delay(2000); } for (int j = 0; j < li.size() * 4; j++) { jsx.executeScript("window.scrollBy(0, -50)", ""); robot.delay(250); } int aleatorio_li = random.nextInt(li.size()); WebElement e = li.get(aleatorio_li); WebElement el = e.findElement(By.tagName("a")); el.sendKeys(""); String link = el.getAttribute("href"); System.out.println(">>>>>>>>>>>" + link); driver.get(link); robot.delay(10000); WebDriverWait wait = new WebDriverWait(driver, 1); wait.until( ExpectedConditions.presenceOfElementLocated(By.xpath("//ul[@class='nav nav-tabs']"))); WebElement ul = driver.findElement(By.xpath("//ul[@class='nav nav-tabs']")); if (ul != null) { List<WebElement> tabs = ul.findElements(By.tagName("a")); System.out.println("num tabs: " + tabs.size()); //List<String> links = new ArrayList<>(); for (int j = 1; j < tabs.size(); j++) { WebElement get1 = tabs.get(j); //System.out.println("tab: " + get1.getText()); //WebElement a = get1.findElement(By.tagName("a")); System.out.println("tab: " + get1.getAttribute("href")); //wait.until(ExpectedConditions.presenceOfElementLocated(By.xpath("//ul[@class='nav nav-tabs']"))); //driver.get(get1.getAttribute("href")); //links.add(a.getAttribute("href")); //get1.click(); //robot.delay(5000); } robot.delay(5000); } } else if (aleatorio_ambar == 1) { driver.get("http://ambar.utpl.edu.ec/organization"); robot.delay(5000); List<WebElement> li = driver.findElements(By.className("media-view")); System.out.println(">>>>>>>>>>>" + li.size()); JavascriptExecutor jsx = (JavascriptExecutor) driver; for (int j = 0; j < li.size() / 2; j++) { jsx.executeScript("window.scrollBy(0, 250)", ""); robot.delay(2000); } for (int j = 0; j < li.size() * 4; j++) { jsx.executeScript("window.scrollBy(0, -50)", ""); robot.delay(250); } int aleatorio_li = random.nextInt(li.size()); WebElement e = li.get(aleatorio_li); e.sendKeys(""); String link = e.getAttribute("href"); System.out.println(">>>>>>>>>>>" + link); driver.get(link); robot.delay(10000); WebDriverWait wait = new WebDriverWait(driver, 1); wait.until( ExpectedConditions.presenceOfElementLocated(By.xpath("//ul[@class='nav nav-tabs']"))); WebElement ul = driver.findElement(By.xpath("//ul[@class='nav nav-tabs']")); if (ul != null) { List<WebElement> tabs = ul.findElements(By.tagName("a")); System.out.println("num tabs: " + tabs.size()); for (int j = 1; j < tabs.size(); j++) { WebElement get1 = tabs.get(j); //System.out.println("tab: " + get1.getText()); //WebElement a = get1.findElement(By.tagName("a")); System.out.println("tab: " + get1.getAttribute("href")); //get1.click(); //wait.until(ExpectedConditions.presenceOfElementLocated(By.xpath("//ul[@class='nav nav-tabs']"))); //driver.get(get1.getAttribute("href")); //robot.delay(5000); } robot.delay(5000); } } else if (aleatorio_ambar == 2) { driver.get("http://ambar.utpl.edu.ec/group"); robot.delay(5000); List<WebElement> li = driver.findElements(By.className("media-view")); System.out.println(">>>>>>>>>>>" + li.size()); JavascriptExecutor jsx = (JavascriptExecutor) driver; for (int j = 0; j < li.size() / 2; j++) { jsx.executeScript("window.scrollBy(0, 250)", ""); robot.delay(2000); } for (int j = 0; j < li.size() * 4; j++) { jsx.executeScript("window.scrollBy(0, -50)", ""); robot.delay(250); } int aleatorio_li = random.nextInt(li.size()); WebElement e = li.get(aleatorio_li); e.sendKeys(""); String link = e.getAttribute("href"); System.out.println(">>>>>>>>>>>" + link); driver.get(link); robot.delay(10000); WebDriverWait wait = new WebDriverWait(driver, 1); wait.until( ExpectedConditions.presenceOfElementLocated(By.xpath("//ul[@class='nav nav-tabs']"))); WebElement ul = driver.findElement(By.xpath("//ul[@class='nav nav-tabs']")); if (ul != null) { List<WebElement> tabs = ul.findElements(By.tagName("a")); System.out.println("num tabs: " + tabs.size()); for (int j = 1; j < tabs.size(); j++) { WebElement get1 = tabs.get(j); //System.out.println("tab: " + get1.getText()); //WebElement a = get1.findElement(By.tagName("a")); System.out.println("tab: " + get1.getAttribute("href")); //get1.click(); //wait.until(ExpectedConditions.presenceOfElementLocated(By.xpath("//ul[@class='nav nav-tabs']"))); //driver.get(get1.getAttribute("href")); } robot.delay(5000); } } } } //jsx.executeScript("window.history.go(-1)"); //robot.delay(5000); //driver.quit(); }
From source file:edu.samplu.common.WebDriverUtil.java
License:Educational Community License
/** * Setup the WebDriver test, login, and load the given web page * * @param username//from w ww. j a v a2s .co m * @param url * @param className * @param testName * @return driver * @throws Exception */ public static WebDriver setUp(String username, String url, String className, String testName) throws Exception { if ("true".equals(System.getProperty(REMOTE_JGROWL_ENABLED, "false"))) { jGrowlEnabled = true; } if ("true".equals(System.getProperty(JS_HIGHLIGHT_PROPERTY, "false"))) { jsHighlightEnabled = true; if (System.getProperty(JS_HIGHLIGHT_INPUT_PROPERTY) != null) { InputStream in = WebDriverUtil.class .getResourceAsStream(System.getProperty(JS_HIGHLIGHT_INPUT_PROPERTY)); BufferedReader reader = new BufferedReader(new InputStreamReader(in)); String line = null; List<String> lines = new LinkedList<String>(); while ((line = reader.readLine()) != null) { lines.add(line); } } } WebDriver driver = null; if (System.getProperty(REMOTE_DRIVER_SAUCELABS_PROPERTY) == null) { driver = getWebDriver(); } else { SauceLabsWebDriverHelper saucelabs = new SauceLabsWebDriverHelper(); saucelabs.setUp(className, testName); driver = saucelabs.getDriver(); } driver.manage().timeouts().implicitlyWait(SETUP_URL_LOAD_WAIT_SECONDS, TimeUnit.SECONDS); if (!System.getProperty(SauceLabsWebDriverHelper.SAUCE_BROWSER_PROPERTY, "ff").equals("opera")) { driver.manage().window().maximize(); } // TODO Got into the situation where the first url doesn't expect server, but all others do. Readdress once // the NavIT WDIT conversion has been completed. if (!url.startsWith("http")) { url = ITUtil.getBaseUrlString() + url; } driver.get(url); driver.manage().timeouts().implicitlyWait(DEFAULT_IMPLICIT_WAIT_TIME, TimeUnit.SECONDS); return driver; }