List of usage examples for org.openqa.selenium.firefox FirefoxDriver close
@Override public void close()
From source file:applango.common.dashboardTests.java
@Test @Ignore// w w w .j a v a 2s. c om public void testDashboardFilterDate() throws ParserConfigurationException, SAXException, IOException { Applango applango = getApplangoConfigurationXML(); FirefoxDriver driver1 = getFirefoxDriver(); WebDriverWait wait1 = new WebDriverWait(driver1, 15); wait1.withTimeout(50, TimeUnit.SECONDS); try { genericApplangoWebsiteActions.openDashboardAndLogin(applango, driver1, wait1); // genericApplangoWebsiteActions.filterLicenseType(driver1, wait1, SALESFORCE); filterByDate(driver1, wait1, "2013", months.SEPTEMBER, "", months.JANUARY); //Blank toYear in order to keep is till 2014 genericApplangoWebsiteActions.waitForUsersTableToLoad(wait1); } catch (Exception ex) { logger.error(ex.getMessage()); fail("Failed due to : " + ex.getMessage()); } finally { driver1.close(); } }
From source file:applango.common.dashboardTests.java
@Test @Ignore/*from w w w. j a v a 2 s . c o m*/ public void testResetPasswordEmailRecieved() throws ParserConfigurationException, SAXException, IOException { logger.info("********************************************* Running " + Thread.currentThread().getStackTrace()[1].getMethodName() + "*********************************************"); Gmail gmail = genericGmailWebsiteActions.getGmailConfigurationXML(); FirefoxDriver driver = getFirefoxDriver(); FirefoxDriver driver1 = getFirefoxDriver(); WebDriverWait wait = new WebDriverWait(driver, 15); WebDriverWait wait1 = new WebDriverWait(driver1, 15); Applango applango = getApplangoConfigurationXML(); String validUsername = applango.getUsername(); long sleepTime = 13000; final String connection = dbTables.emailToken.getValue().toString(); try { //Remove emailTokens logger.info("Connect to db table " + connection); DBCollection coll = db.getCollection(connection); mongoDB.removeRecordsFromDB(applango, coll); //Gmail Get Inbox logger.info("Open Gamil and get current inbox amount"); loginToGmail(gmail, driver, wait); String amountOfMailBeforeResetPassword = genericGmailWebsiteActions.getInboxLabel(driver); //Applango Recover Password logger.info("Recover Password via dashboard login page "); genericApplangoWebsiteActions.openDashboard(applango, driver1, wait1); genericApplangoWebsiteActions.clickOnForgotPassword(driver1, wait1); genericApplangoWebsiteActions.enterUsernameInForgotPasswordTextfield(driver1, validUsername); genericApplangoWebsiteActions.clickOnRecoverPassword(driver1, wait1); logger.info("Get new token from DB"); String token = mongoDB.getSpecialToken(applango, coll); token = mongoDB.encodeToken(token); logger.info("Token is " + token); //Gmail click on link and set new password logger.info( "Wait few seconds and click on Inbox label in order to refresh inbox and compare no. of mails in order to make sure mail received"); genericGmailWebsiteActions.checkNewMailRecieved(driver, sleepTime, amountOfMailBeforeResetPassword); } catch (Exception ex) { logger.error(ex.getMessage()); fail("Failed due to : " + ex.getMessage()); } finally { driver.close(); driver1.close(); } }
From source file:applango.common.dashboardTests.java
@Test @Ignore/* w ww . j a v a2 s. c om*/ public void testResettingPasswordFromEmail() throws ParserConfigurationException, SAXException, IOException { logger.info("********************************************* Running " + Thread.currentThread().getStackTrace()[1].getMethodName() + "*********************************************"); Gmail gmail = genericGmailWebsiteActions.getGmailConfigurationXML(); FirefoxDriver driver1 = getFirefoxDriver(); WebDriverWait wait1 = new WebDriverWait(driver1, 15); Applango applango = getApplangoConfigurationXML(); String validPassword = applango.getPassword(); String invalidPasswordNoDigits = "NoDigitsPwd"; String invalidPasswordNoChars = "123456789"; String invalidPasswordTooShort = "12345a"; long sleepTime = 13000; // Database dbProperties = getDatabaseConfigurationXML(); final String connection = dbTables.emailToken.getValue().toString(); try { logger.info("Get new token from DB"); // DB db = connectToDB(dbProperties); DBCollection coll = db.getCollection(connection); String token = mongoDB.getSpecialToken(applango, coll); token = mongoDB.encodeToken(token); logger.info("Token is " + token); logger.info("Try again to open mail and locate link.."); loginToGmail(gmail, driver1, wait1); logger.info("Check that the mail is from applango with correct subject)"); genericGmailWebsiteActions.checkMailSubjectIsResetPassword(driver1); genericGmailWebsiteActions.checkMailSenderIsApplango(driver1); genericGmailWebsiteActions.clickOnFirstMail(driver1, wait1); genericGmailWebsiteActions.waitForMailToLoad(wait1); genericGmailWebsiteActions.checkResetPasswordToken(driver1, token); genericGmailWebsiteActions.clickOnChangePasswordLink(driver1); logger.info("Set new Password in Change Password screen"); String gmailWinID = controlAndSwitchWindow(driver1); genericApplangoWebsiteActions.checkEnterNewPasswordScreenLoaded(driver1, wait1); logger.info("Negative test - set password with invalid passwords"); genericApplangoWebsiteActions.fillChangePasswordAndSubmit(driver1, null, validPassword, validPassword + "A", true); genericApplangoWebsiteActions.checkChangePasswordMessage(driver1, applangoMessages.CHANGE_PASSWORD_NOT_MATCH); genericApplangoWebsiteActions.fillChangePasswordAndSubmit(driver1, null, invalidPasswordNoChars, invalidPasswordNoChars, true); genericApplangoWebsiteActions.checkChangePasswordMessage(driver1, applangoMessages.CHANGE_PASSWORD_INVALID_LETTERS_AND_NUMBERS); genericApplangoWebsiteActions.fillChangePasswordAndSubmit(driver1, null, invalidPasswordNoDigits, invalidPasswordNoDigits, true); genericApplangoWebsiteActions.checkChangePasswordMessage(driver1, applangoMessages.CHANGE_PASSWORD_INVALID_LETTERS_AND_NUMBERS); genericApplangoWebsiteActions.fillChangePasswordAndSubmit(driver1, null, invalidPasswordTooShort, invalidPasswordTooShort, true); genericApplangoWebsiteActions.checkChangePasswordMessage(driver1, applangoMessages.CHANGE_PASSWORD_INVALID_TOO_SHORT); logger.info("Set valid Password in Change Password screen"); genericApplangoWebsiteActions.fillChangePasswordAndSubmit(driver1, null, validPassword, validPassword, true); logger.info("Verify pop up message and click on 'Yes'"); controlAndSwitchWindow(driver1); genericApplangoWebsiteActions.verifyPasswordSuccessfulyChangedMessageAppear(driver1); //Applango login with new password logger.info("Login with new password"); genericApplangoWebsiteActions.openDashboardAndLogin(applango, driver1, wait1); } catch (Exception ex) { logger.error(ex.getMessage()); fail("Failed due to : " + ex.getMessage()); } finally { driver1.close(); } }
From source file:com.coinbot.core.Worker.java
License:Open Source License
@Override public void run() { File pathToBinary = new File("/home/jian/Descargas/firefox46/bin/firefox"); // Firefox 46 needed FirefoxBinary ffBinary = new FirefoxBinary(pathToBinary); FirefoxProfile profile = new FirefoxProfile(); FirefoxDriver driver = new FirefoxDriver(ffBinary, profile); CoinbotApplication.ui.workerQueue.addWorker(workerPanel); while (CoinbotApplication.bot.isRunning()) { // Sacamos un "claim" de la cola Claim claim = CoinbotApplication.bot.getClaimQueue().next(); if (claim == null) { continue; }// w w w . jav a 2s . co m claim.getPanel().reset(); claim.getPanel().getProgressBar().setMaximum(10); workerPanel.addClaim(claim.getPanel()); claim.getPanel().nextStep("Opening URL"); try { driver.manage().timeouts().pageLoadTimeout(12, TimeUnit.SECONDS); driver.navigate().to(new URL(claim.getFaucet().getUrl())); } catch (MalformedURLException e) { e.printStackTrace(); continue; } catch (TimeoutException e) { // Busca un elemento, si no lo encuentra que vuelva a cargar e.printStackTrace(); } // Detectando captcha claim.getPanel().nextStep("Detecting Captcha"); CaptchaDetector captchaDetector = new CaptchaDetector(); CaptchaService captcha = null; try { captcha = captchaDetector.find(driver, driver.findElement(By.tagName("body"))); } catch (NoSuchElementException ex) { ex.printStackTrace(); claim.getPanel().nextStep("Body not found!"); continue; } catch (UnrecognizedCaptcha ex) { ex.printStackTrace(); claim.getPanel().nextStep("Captcha not recognized."); continue; } catch (Exception ex) { continue; } claim.getPanel().nextStep("Trying auto resolving"); // Intentamos buscar el hash en la DB CaptchaHash ch = new CaptchaHash(captcha); String answer = CoinbotApplication.captchaDatabase.getAnswer(ch.getHash()); // Si no enctramos la respuesta en la bd se la pedimos al usuario if (answer == null) { claim.getPanel().nextStep("Waiting for captcha answer ..."); // Encolar captcha CoinbotApplication.bot.getCaptchaQueue().toQueue(captcha); // Esperar la resolucion del captcha CaptchaTimer timer = new CaptchaTimer(captcha, 35); timer.start(); // Esperamos a la resolucion while (!timer.isExpired() && !captcha.resolved()) { CoinbotApplication.ui.captchaQueue.getCaptchaPanel(captcha).setTimer(timer.getSecondsLeft()); } if (!captcha.resolved()) { CoinbotApplication.captchaDatabase.addCaptcha(ch); continue; } } // Guardamos el captcha en la DB CoinbotApplication.captchaDatabase.addCaptcha(new CaptchaHash(captcha)); // Y la imagen en un archivo try { ImageIO.write(captcha.getImage(), "png", new File("coinbot/captchas/" + ch.getHash() + ".png")); } catch (IOException e) { e.printStackTrace(); } // Envia la respuesta al input captcha.answerToInput(driver); // Desencolar captcha CoinbotApplication.bot.getCaptchaQueue().deQueue(captcha); // Escribir address claim.getPanel().nextStep("Detecting input address"); InputAddressDetector iad = new InputAddressDetector(driver); iad.insertAddress(claim.getBtcAddress()); //claim.getPanel().nextStep("Detecting Antibot"); // Detectar antibot (puzzle no soportado) // Resolver antibot // submit claim.getPanel().nextStep("Submiting ..."); WebElement submit = driver.findElement(By.id("address")); submit.submit(); claim.getPanel().nextStep("Checking response"); //claim.getPanel().nextStep("Successfull claim!"); /*WebElement out = null; try { out = driver.findElement(By.className("alert-success")); } catch (NoSuchElementException e) { } try { out = driver.findElement(By.className("alert-danger")); } catch (NoSuchElementException e) { } */ //claim.getPanel().nextStep("Failed claim!"); claim.getPanel().done(); workerPanel.removeClaim(claim.getPanel()); claim.getTimer().done(2000, 1); CoinbotApplication.bot.getClaimQueue().toQueue(claim); try { Thread.sleep(25000); } catch (InterruptedException e) { // TODO Auto-generated catch block e.printStackTrace(); } } try { driver.close(); } catch (Exception e) { } CoinbotApplication.ui.workerQueue.removeWorker(workerPanel); System.out.println("Worker " + workerId + " end work!"); }
From source file:com.vaadin.testbench.TestBenchDriverTest.java
@Test public void testTestBenchDriverActsAsProxy() { FirefoxDriver mockDriver = createMock(FirefoxDriver.class); mockDriver.close(); expectLastCall().once();//from w w w . j a v a 2 s .c o m WebElement mockElement = createNiceMock(WebElement.class); expect(mockDriver.findElement(isA(By.class))).andReturn(mockElement); List<WebElement> elements = Arrays.asList(mockElement); expect(mockDriver.findElements(isA(By.class))).andReturn(elements); mockDriver.get("foo"); expectLastCall().once(); expect(mockDriver.getCurrentUrl()).andReturn("foo"); expect(mockDriver.getPageSource()).andReturn("<html></html>"); expect(mockDriver.getTitle()).andReturn("bar"); expect(mockDriver.getWindowHandle()).andReturn("baz"); Set<String> handles = new HashSet<String>(); expect(mockDriver.getWindowHandles()).andReturn(handles); Options mockOptions = createNiceMock(Options.class); expect(mockDriver.manage()).andReturn(mockOptions); Navigation mockNavigation = createNiceMock(Navigation.class); expect(mockDriver.navigate()).andReturn(mockNavigation); mockDriver.quit(); expectLastCall().once(); expect(((JavascriptExecutor) mockDriver).executeScript(anyObject(String.class))).andStubReturn(true); TargetLocator mockTargetLocator = createNiceMock(TargetLocator.class); expect(mockDriver.switchTo()).andReturn(mockTargetLocator); replay(mockDriver); // TestBenchDriverProxy driver = new TestBenchDriverProxy(mockDriver); WebDriver driver = TestBench.createDriver(mockDriver); driver.close(); By mockBy = createNiceMock(By.class); assertTrue(driver.findElement(mockBy) instanceof TestBenchElementCommands); assertTrue(driver.findElements(mockBy).get(0) instanceof TestBenchElementCommands); driver.get("foo"); assertEquals("foo", driver.getCurrentUrl()); assertEquals("<html></html>", driver.getPageSource()); assertEquals("bar", driver.getTitle()); assertEquals("baz", driver.getWindowHandle()); assertEquals(handles, driver.getWindowHandles()); assertEquals(mockOptions, driver.manage()); assertEquals(mockNavigation, driver.navigate()); driver.quit(); assertEquals(mockTargetLocator, driver.switchTo()); verify(mockDriver); }
From source file:NCB.Extractor.java
public static void idextractor(FirefoxDriver driver) { try {//w w w. j a v a2s . co m String src = null; db = new DBActivityMInsLM(); stUpdte = db.con.createStatement(); ResultSet count = stUpdte.executeQuery("select * from NCB_Linkids where status=0"); while (count.next()) { strInputid = count.getString("Link"); System.out.println(strInputid); driver.navigate().to(strInputid); Thread.sleep(2000); src = driver.getPageSource().toString(); Thread.sleep(3000); extractData(src, strInputid); String q = "update NCB_Linkids set Status=1 where Link='" + strInputid + "'"; System.out.println(q); stUpdte = db.con.createStatement(); stUpdte.executeUpdate(q); stUpdte.close(); } stmtdelete.executeUpdate("Truncate NCB_Linkids"); stmtdelete.close(); db.closeDB(); driver.close(); } catch (Exception e) { System.out.println("Error in idextraction" + e); } }
From source file:org.ado.picasa.Main.java
License:Apache License
public static void main(String[] args) throws Exception { final Options options = new Options(); options.addOption(new Option("a", "album", true, "Album name")); options.addOption("v", "verification-code", true, "Verification code"); options.addOption("o", "output", true, "Albums output directory"); options.addOption("h", "help", false, "Prints this help"); final CommandLine cmd = new DefaultParser().parse(options, args); if (cmd.hasOption("help")) { HelpFormatter formatter = new HelpFormatter(); formatter.printHelp("picasa-crawler", options); System.exit(0);//from www .j a v a2s. com } validateEnvironmentVariables(); final File outputDirectory; if (cmd.hasOption("o")) { outputDirectory = new File(cmd.getOptionValue("o")); } else { outputDirectory = DEFAULT_OUTPUT_DIR; } FileUtils.forceMkdir(outputDirectory); long start = System.currentTimeMillis(); final FirefoxProfile profile = new FirefoxProfile(); profile.setPreference("browser.download.folderList", 2); profile.setPreference("browser.download.dir", outputDirectory.getAbsolutePath()); profile.setPreference("browser.helperApps.neverAsk.saveToDisk", "image/jpeg,image/png"); final FirefoxDriver driver = new FirefoxDriver(profile); loginIntoPicasa(cmd.getOptionValue("v"), driver); driver.navigate().to("https://picasaweb.google.com/home?showall=true"); TimeUnit.SECONDS.sleep(2); final List<WebElement> albumLinks = driver .findElements(By.xpath("//p[@class='gphoto-album-cover-title']/a")); if (cmd.hasOption("a")) { final String albumName = cmd.getOptionValue("a").trim(); System.out.println(String.format("Album: %s", albumName)); downloadAlbum(driver, albumLinks.stream().filter(al -> al.getText().equals(albumName)).findFirst().get() .getAttribute("href"), outputDirectory); } else { final Set<String> albumHrefs = albumLinks.stream().map(a -> a.getAttribute("href")) .collect(Collectors.toSet()); albumHrefs.forEach(a -> downloadAlbum(driver, a, outputDirectory)); } TimeUnit.SECONDS.sleep(10); System.out.println("done"); long end = System.currentTimeMillis(); System.out.println(String.format("execution took %d minutes.", Math.min(TimeUnit.MILLISECONDS.toMinutes(end - start), 1))); driver.close(); }
From source file:org.asqatasun.sebuilder.tools.FirefoxDriverPoolableObjectFactory.java
License:Open Source License
@Override public void destroyObject(FirefoxDriver t) throws Exception { t.close(); t.quit();/*from w w w . java 2 s. c o m*/ if (t != null) { t.kill(); } }
From source file:org.richfaces.tests.archetypes.kitchensink.ftest.mobile.TestForm.java
License:Open Source License
@Test public void testPushFromDesktopToMobile() { FirefoxDriver firefoxDriver = new FirefoxDriver(); String url = getDeployedURL().toExternalForm().replace(ANDORID_LOOPBACK, "localhost") .concat(DESKTOP_MOBILE_NEW_MEMEBER); // opening mobile version of kitchensink on desktop browser as it is not possible to open two browsers on mobile device // or open two emulators firefoxDriver.get(url);/* w ww.j av a 2 s . c o m*/ FieldDecorator fd = new StaleReferenceAwareFieldDecorator(new DefaultElementLocatorFactory(firefoxDriver), 2); RegisterForm registerFormDesktop = new RegisterForm(); PageFactory.initElements(fd, registerFormDesktop); menuPage.gotoListMembersPage(); registerFormDesktop.setCorrectName(); String emailToSet = "pushtomobile@ff.sf"; registerFormDesktop.setEmail(emailToSet); registerFormDesktop.setCorrectPhone(); registerFormDesktop.clickOnRegisterButton(); menuPage.waitFor(MenuPage.PAGE_TRANSITION_WAIT); String tableText = membersTable.getTable().getText(); assertTrue(tableText.contains(emailToSet), "Registration of new member desktop mobile version was not pushed to the mobile device!"); firefoxDriver.close(); }
From source file:org.richfaces.tests.archetypes.kitchensink.ftest.mobile.TestForm.java
License:Open Source License
@Test public void testPushFromMobileToDesktop() { FirefoxDriver firefoxDriver = new FirefoxDriver(); String url = getDeployedURL().toExternalForm().replace(ANDORID_LOOPBACK, "localhost") .concat(DESKTOP_MOBILE_LIST_MEMBERS); // opening mobile version of kitchensink on desktop browser as it is not possible to open two browsers on mobile device // or open two emulators firefoxDriver.get(url);/*from w w w .j a v a 2s .c om*/ FieldDecorator fd = new StaleReferenceAwareFieldDecorator(new DefaultElementLocatorFactory(firefoxDriver), 2); MembersTable membersTableDesktop = new MembersTable(); PageFactory.initElements(fd, membersTableDesktop); menuPage.gotoAddMemberPage(); registerForm.setCorrectName(); String emailToSet = "pushfromdesktop@pushik.cz"; registerForm.setEmail(emailToSet); registerForm.setCorrectPhone(); registerForm.clickOnRegisterButton(); menuPage.waitFor(MenuPage.PAGE_TRANSITION_WAIT); String tableText = membersTableDesktop.getTable().getText(); assertTrue(tableText.contains(emailToSet), "Registration of new member on mobile device was not pushed to the desktop mobile version!"); firefoxDriver.close(); }