List of usage examples for org.openqa.selenium.support.ui ExpectedConditions visibilityOfElementLocated
public static ExpectedCondition<WebElement> visibilityOfElementLocated(final By locator)
From source file:barChart1.BarChartDemo.java
License:Open Source License
/** * Starting point for the demonstration application. * * @param args ignored.//from w w w .java 2 s . c o m */ public static void main(String[] args) { // Demo to buy tickets to the EK 2016 System.out.println("Hello UEFA 2016 !!!"); statistics = ""; JOptionPane.showMessageDialog(null, "Belgium versus Italy demo start"); driver = new FirefoxDriver(); wait = new WebDriverWait(driver, 500); //Open Home Page driver.manage().window().maximize(); driver.get("http://www.uefa.com/"); wait.until(ExpectedConditions.visibilityOfElementLocated( By.xpath("//div/header/nav/div/div/ul/li/a[text() = 'UEFA EURO 2016']"))); driver.findElement(By.xpath("//div/header/nav/div/div/ul/li/a[text() = 'UEFA EURO 2016']")).click(); wait.until(ExpectedConditions .visibilityOfElementLocated(By.xpath("//div/div/div//nav/div/div/ul/li/a[ text() = 'Teams']"))); wait.until(ExpectedConditions .visibilityOfElementLocated(By.xpath("//div/div/div//nav/div/div/ul/li/a[ text() = 'Matches']"))) .click(); wait.until(ExpectedConditions.visibilityOfElementLocated( By.xpath("//div/div//div//div/a[text() = 'Select your team and follow their EURO journey']"))); driver.findElement( By.xpath("//div/div//div//div/a[text() = 'Select your team and follow their EURO journey']")) .click(); wait2Secs(); wait.until(ExpectedConditions .visibilityOfElementLocated(By.xpath("//div/div/div//ul/li/span[text()='Belgium']"))); driver.findElement(By.xpath("//div/div/div//ul/li/span[text()='Belgium']")).click(); // Belgium wait2Secs(); wait.until(ExpectedConditions .visibilityOfElementLocated(By.xpath("(//div/table[1]/tbody/tr/td/div/a[text()='21.00'])[1]"))); driver.findElement(By.xpath("(//div/table[1]/tbody/tr/td/div/a[text()='21.00'])[1]")).click(); wait2Secs(); wait.until(ExpectedConditions.visibilityOfElementLocated(By.xpath("//a/span[text()='Pre-match']"))); // Go to the statistics driver.get("http://www.uefa.com/uefaeuro/season=2016/statistics/index.html"); wait.until(ExpectedConditions.visibilityOfElementLocated(By.xpath("//a/span[text()='Teams']"))); driver.findElement(By.xpath("//a/span[text()='Teams']")).click(); // Look up the statistics for Belgium and Italy getOverviewStats("BE", "ITA", "Belgium", "Italy"); wait.until( ExpectedConditions.visibilityOfElementLocated(By.xpath("//div/div/div/ul/li/a[text()='Goals']"))); driver.findElement(By.xpath("//div/div/div/ul/li/a[text()='Goals']")).click(); wait.until(ExpectedConditions .visibilityOfElementLocated(By.xpath("//div/div/div/div/input[@value='Search for a team']"))); driver.findElement(By.xpath("//div/div/div/div/input[@value='Search for a team']")).sendKeys("Belgium"); ; wait2Secs(); // getGoalsStats("BE","ITA","Belgium","Italy"); wait.until(ExpectedConditions .visibilityOfElementLocated(By.xpath("//div/div/div/ul/li/a[text()='Attempts']"))); driver.findElement(By.xpath("//div/div/div/ul/li/a[text()='Attempts']")).click(); wait.until(ExpectedConditions .visibilityOfElementLocated(By.xpath("//div/div/div/div/input[@value='Search for a team']"))); driver.findElement(By.xpath("//div/div/div/div/input[@value='Search for a team']")).sendKeys("Belgium"); ; wait2Secs(); wait.until( ExpectedConditions.visibilityOfElementLocated(By.xpath("//div/div/div/ul/li/a[text()='Passes']"))); driver.findElement(By.xpath("//div/div/div/ul/li/a[text()='Passes']")).click(); wait2Secs(); // Italy wait.until(ExpectedConditions .visibilityOfElementLocated(By.xpath("//div/div/div/div/input[@value='Search for a team']"))); driver.findElement(By.xpath("//div/div/div/div/input[@value='Search for a team']")).sendKeys("Italy"); ; wait.until(ExpectedConditions .visibilityOfElementLocated(By.xpath("//div/div/div/ul/li/a[text()='Overview']"))); driver.findElement(By.xpath("//div/div/div/ul/li/a[text()='Overview']")).click(); driver.manage().timeouts().implicitlyWait(2, TimeUnit.SECONDS); wait.until(ExpectedConditions .visibilityOfElementLocated(By.xpath("//div/div/div/div/input[@value='Search for a team']"))); driver.findElement(By.xpath("//div/div/div/div/input[@value='Search for a team']")).sendKeys("Italy"); ; wait.until( ExpectedConditions.visibilityOfElementLocated(By.xpath("//div/div/div/ul/li/a[text()='Goals']"))); driver.findElement(By.xpath("//div/div/div/ul/li/a[text()='Goals']")).click(); driver.manage().timeouts().implicitlyWait(2, TimeUnit.SECONDS); wait.until(ExpectedConditions .visibilityOfElementLocated(By.xpath("//div/div/div/div/input[@value='Search for a team']"))); driver.findElement(By.xpath("//div/div/div/div/input[@value='Search for a team']")).sendKeys("Italy"); ; wait.until(ExpectedConditions .visibilityOfElementLocated(By.xpath("//div/div/div/ul/li/a[text()='Attempts']"))); driver.findElement(By.xpath("//div/div/div/ul/li/a[text()='Attempts']")).click(); driver.manage().timeouts().implicitlyWait(2, TimeUnit.SECONDS); wait.until(ExpectedConditions .visibilityOfElementLocated(By.xpath("//div/div/div/div/input[@value='Search for a team']"))); driver.findElement(By.xpath("//div/div/div/div/input[@value='Search for a team']")).sendKeys("Italy"); ; wait.until( ExpectedConditions.visibilityOfElementLocated(By.xpath("//div/div/div/ul/li/a[text()='Passes']"))); driver.findElement(By.xpath("//div/div/div/ul/li/a[text()='Passes']")).click(); wait.until(ExpectedConditions .visibilityOfElementLocated(By.xpath("//div/div/div/div/input[@value='Search for a team']"))); driver.findElement(By.xpath("//div/div/div/div/input[@value='Search for a team']")).sendKeys("Italy"); ; driver.manage().timeouts().implicitlyWait(2, TimeUnit.SECONDS); JOptionPane.showMessageDialog(null, "Belgium versus Italy : \n" + statistics); BarChartDemo demo = new BarChartDemo("Belgium vs Italy"); demo.pack(); RefineryUtilities.centerFrameOnScreen(demo); demo.setVisible(true); }
From source file:barChart1.BarChartDemo.java
License:Open Source License
public static String getOverviewStats(String country, String secondcountry, String countryName, String secondCountryName) { wait.until(ExpectedConditions .visibilityOfElementLocated(By.xpath("//div/div/div/ul/li/a[text()='Overview']"))); driver.findElement(By.xpath("//div/div/div/ul/li/a[text()='Overview']")).click(); wait.until(ExpectedConditions// w w w. j av a 2 s .c o m .visibilityOfElementLocated(By.xpath("//div/div/div/div/input[@value='Search for a team']"))); driver.findElement(By.xpath("//div/div/div/div/input[@value='Search for a team']")).sendKeys(countryName); ; wait2Secs(); String matchesPlayed1 = driver.findElement(By.xpath("//tbody/tr[@class='off odd']/td[2]")).getText(); String wins1 = driver.findElement(By.xpath("//tbody/tr[@class='off odd']/td[3]")).getText(); String draws1 = driver.findElement(By.xpath("//tbody/tr[@class='off odd']/td[4]")).getText(); String losses1 = driver.findElement(By.xpath("//tbody/tr[@class='off odd']/td[5]")).getText(); driver.findElement(By.xpath("//div/div/div/div/input[@value='Search for a team']")).clear(); wait2Secs(); wait.until(ExpectedConditions .visibilityOfElementLocated(By.xpath("//div/div/div/div/input[@value='Search for a team']"))); driver.findElement(By.xpath("//div/div/div/div/input[@value='Search for a team']")) .sendKeys(secondCountryName); ; wait2Secs(); // Italy String matchesPlayed2 = driver.findElement(By.xpath("//tbody/tr[@class='off odd']/td[2]")).getText(); String wins2 = driver.findElement(By.xpath("//tbody/tr[@class='off odd']/td[3]")).getText(); String draws2 = driver.findElement(By.xpath("//tbody/tr[@class='off odd']/td[4]")).getText(); String losses2 = driver.findElement(By.xpath("//tbody/tr[@class='off odd']/td[5]")).getText(); driver.findElement(By.xpath("//div/div/div/div/input[@value='Search for a team']")).clear(); wait2Secs(); wait.until(ExpectedConditions .visibilityOfElementLocated(By.xpath("//div/div/div/div/input[@value='Search for a team']"))); driver.findElement(By.xpath("//div/div/div/div/input[@value='Search for a team']")) .sendKeys(secondCountryName); ; wait2Secs(); // Italy String matchesPlayed2 = driver.findElement(By.xpath("//tbody/tr[@class='off odd']/td[2]")).getText(); String wins2 = driver.findElement(By.xpath("//tbody/tr[@class='off odd']/td[3]")).getText(); String draws2 = driver.findElement(By.xpath("//tbody/tr[@class='off odd']/td[4]")).getText(); String losses2 = driver.findElement(By.xpath("//tbody/tr[@class='off odd']/td[5]")).getText(); driver.findElement(By.xpath("//div/div/div/div/input[@value='Search for a team']")).clear(); wait2Secs(); wait.until(ExpectedConditions .visibilityOfElementLocated(By.xpath("//div/div/div/div/input[@value='Search for a team']"))); driver.findElement(By.xpath("//div/div/div/div/input[@value='Search for a team']")) .sendKeys(secondCountryName); ; wait2Secs(); // Italy String matchesPlayed2 = driver.findElement(By.xpath("//tbody/tr[@class='off odd']/td[2]")).getText(); String wins2 = driver.findElement(By.xpath("//tbody/tr[@class='off odd']/td[3]")).getText(); String draws2 = driver.findElement(By.xpath("//tbody/tr[@class='off odd']/td[4]")).getText(); String losses2 = driver.findElement(By.xpath("//tbody/tr[@class='off odd']/td[5]")).getText(); return statistics; }
From source file:bg.pragmatic.lecture13mvn.waits.utils.WaitTool.java
License:Open Source License
/** * Wait for the element to be present in the DOM, and displayed on the page. * And returns the first WebElement using the given method. * //from w w w .ja v a2s. c o m * @param WebDriver * The driver object to be used * @param By * selector to find the element * @param int The time in seconds to wait until returning a failure * * @return WebElement the first WebElement using the given method, or null * (if the timeout is reached) */ public static WebElement waitForElement(WebDriver driver, final By by, int timeOutInSeconds) { WebElement element; try { // To use WebDriverWait(), we would have to nullify // implicitlyWait(). // Because implicitlyWait time also set "driver.findElement()" wait // time. // info from: // https://groups.google.com/forum/?fromgroups=#!topic/selenium-users/6VO_7IXylgY driver.manage().timeouts().implicitlyWait(0, TimeUnit.SECONDS); // nullify // implicitlyWait() WebDriverWait wait = new WebDriverWait(driver, timeOutInSeconds); element = wait.until(ExpectedConditions.visibilityOfElementLocated(by)); driver.manage().timeouts().implicitlyWait(DEFAULT_WAIT_4_PAGE, TimeUnit.SECONDS); // reset // implicitlyWait return element; // return the element } catch (Exception e) { e.printStackTrace(); } return null; }
From source file:br.com.mundotigre.scripts.WaitTool.java
License:Open Source License
/** * Wait for the element to be present in the DOM, and displayed on the page. * And returns the first WebElement using the given method. * * @param WebDriver The driver object to be used * @param By selector to find the element * @param int The time in seconds to wait until returning a failure * * @return WebElement the first WebElement using the given method, or null (if the timeout is reached) *///from ww w. java 2 s . c o m public static WebElement waitForElement(WebDriver driver, final By by, int timeOutInSeconds) { WebElement element; try { //To use WebDriverWait(), we would have to nullify implicitlyWait(). //Because implicitlyWait time also set "driver.findElement()" wait time. //info from: https://groups.google.com/forum/?fromgroups=#!topic/selenium-users/6VO_7IXylgY driver.manage().timeouts().implicitlyWait(0, TimeUnit.SECONDS); //nullify implicitlyWait() WebDriverWait wait = new WebDriverWait(driver, timeOutInSeconds); element = wait.until(ExpectedConditions.visibilityOfElementLocated(by)); driver.manage().timeouts().implicitlyWait(DEFAULT_WAIT_4_PAGE, TimeUnit.SECONDS); //reset implicitlyWait return element; //return the element } catch (Exception e) { e.printStackTrace(); } return null; }
From source file:br.gov.frameworkdemoiselle.behave.runner.webdriver.ui.WebBase.java
License:Open Source License
/** * Mtodo que verifica em todas as classes se existe um componente Loading, * e se existir, ele sempre espera que este elemento desaparea antes de * continuar./*ww w .j a v a2 s.co m*/ */ @SuppressWarnings("unchecked") public void waitLoading() { driver = (WebDriver) runner.getDriver(); driver.manage().timeouts().implicitlyWait(0, TimeUnit.MILLISECONDS); if (!alreadySearchLoadingMap) { alreadySearchLoadingMap = true; Reflections reflections = new Reflections(""); Set<Class<?>> annotatedClasses = reflections.getTypesAnnotatedWith(ScreenMap.class); for (Class<?> clazzI : annotatedClasses) { HashSet<Field> fields = (HashSet<Field>) ReflectionUtils.getAllFields(clazzI, ReflectionUtils.withAnnotation(ElementMap.class), ReflectionUtils.withTypeAssignableTo(Loading.class)); if (fields.size() == 1) { for (Field field : fields) { loadingMap = field.getAnnotation(ElementMap.class); } } } } if (loadingMap != null) { boolean existeLoading; try { // Verifica se existe o LOADING ExpectedConditions .presenceOfElementLocated( ByConverter.convert(loadingMap.locatorType(), loadingMap.locator()[0])) .apply(driver); existeLoading = true; log.debug(message.getString("message-loading-visible")); } catch (Exception e) { existeLoading = false; } if (existeLoading) { // Fora esperar o loading aparecer quando o elemento utilizado // tem a propriedade forWaitLoading na anotao @ElementMap if (getElementMap() != null && getElementMap().forceWaitLoading()) { WebDriverWait wait = new WebDriverWait(getDriver(), (BehaveConfig.getRunner_ScreenMaxWait() / 1000)); wait.until(ExpectedConditions.visibilityOfElementLocated( ByConverter.convert(loadingMap.locatorType(), loadingMap.locator()[0]))); log.debug(message.getString("message-force-loading")); } // Aguardo o LOADING desaparecer! WebDriverWait wait = new WebDriverWait(getDriver(), (BehaveConfig.getRunner_ScreenMaxWait() / 1000)); wait.until(ExpectedConditions.invisibilityOfElementLocated( ByConverter.convert(loadingMap.locatorType(), loadingMap.locator()[0]))); log.debug(message.getString("message-loading-invisible")); } } driver.manage().timeouts().implicitlyWait(BehaveConfig.getRunner_ScreenMaxWait(), TimeUnit.MILLISECONDS); }
From source file:br.gov.frameworkdemoiselle.behave.runner.webdriver.ui.WebBase.java
License:Open Source License
private void waitVisibility(By by) { findFrameContainingElement(by);/*from w w w . j a v a 2 s . co m*/ WebDriverWait wait = new WebDriverWait(getDriver(), (BehaveConfig.getRunner_ScreenMaxWait() / 1000)); wait.until(ExpectedConditions.visibilityOfElementLocated(by)); }
From source file:br.gov.frameworkdemoiselle.behave.runner.webdriver.ui.WebBase.java
License:Open Source License
public void waitInvisible(int index) { final String locator = getLocatorWithParameters(getElementMap().locator()[index].toString()); final By by = ByConverter.convert(getElementMap().locatorType(), locator); boolean testInvisibility = true; driver = (WebDriver) runner.getDriver(); // Zera o tempo do driver, se no o implicity wait no funciona com o // tempo correto driver.manage().timeouts().implicitlyWait(0, TimeUnit.MILLISECONDS); try {// www.j av a 2s.co m // Aguarda o elemento ficar visivel (MinWait) Long waitTimeVis = (BehaveConfig.getRunner_ScreenMinWait() / 1000); WebDriverWait waitVis = new WebDriverWait(driver, waitTimeVis); waitVis.until(ExpectedConditions.visibilityOfElementLocated(by)); testInvisibility = true; } catch (org.openqa.selenium.TimeoutException e) { testInvisibility = false; } if (testInvisibility) { // Aguarda ele sumir Long waitTime = (BehaveConfig.getRunner_ScreenMaxWait() / 1000); WebDriverWait wait = new WebDriverWait(driver, waitTime); wait.until(ExpectedConditions.invisibilityOfElementLocated(by)); } // Volta o tempo padro (maxWait) no driver driver.manage().timeouts().implicitlyWait(BehaveConfig.getRunner_ScreenMaxWait(), TimeUnit.MILLISECONDS); }
From source file:budget.util.java
public static void waitForElement(WebDriverWait wait, By locator) { wait.until(ExpectedConditions.visibilityOfElementLocated(locator)); }
From source file:businesscomponents.ReportcomparisonComponents1.java
public boolean waitForElement(WebDriver driver, By by, int time) { boolean flag; try {/*from w ww .j ava2 s. c om*/ driver.manage().timeouts().implicitlyWait(50, TimeUnit.SECONDS); assertTrue((isElementPresent(driver, by))); WebDriverWait wait = new WebDriverWait(driver, time); WebElement myElement = wait.until(ExpectedConditions.visibilityOfElementLocated(by)); driver.manage().timeouts().implicitlyWait(50, TimeUnit.SECONDS); if (myElement != null) flag = true; else flag = false; } catch (Exception e) { System.out.println(e.toString()); flag = false; } return flag; }
From source file:businesscomponents.ReportcomparisonComponents1.java
public static boolean waitForElementForSecond(WebDriver driver, By by, int time) { boolean flag; try {/* w w w. j ava 2s . c om*/ WebDriverWait wait = new WebDriverWait(driver, time); WebElement myElement = wait.until(ExpectedConditions.visibilityOfElementLocated(by)); driver.manage().timeouts().implicitlyWait(4, TimeUnit.SECONDS); if (myElement != null) flag = true; else flag = false; } catch (Exception e) { System.out.println(e.toString()); flag = false; } return flag; }