Example usage for org.openqa.selenium WebElement findElements

List of usage examples for org.openqa.selenium WebElement findElements

Introduction

In this page you can find the example usage for org.openqa.selenium WebElement findElements.

Prototype

@Override
List<WebElement> findElements(By by);

Source Link

Document

Find all elements within the current context using the given mechanism.

Usage

From source file:Filter2002Test.java

@Test
public void test_2() {
    WebElement filter = driver.findElement(By.id("filter"));
    filter.sendKeys(Keys.BACK_SPACE);/*from   www .j av  a2s .com*/
    WebElement table = driver.findElement(By.id("tbodycars"));
    List<WebElement> tableRows = table.findElements(By.tagName("tr"));
    // There should be five rows of data.
    assertThat(tableRows.size(), is(5));
}

From source file:ItemTest.java

@Test
public void testCreateProveedor() throws Exception {

    /**/*from  w w w . j a  v a2  s . co  m*/
     * Comando que realiza click sobre el boton "create" del toolbar. La
     * funcin 'find' encuentra el control y posteriormente hace clic en el
     * mismo. La forma en la que se busca el control es utilizando
     * expresiones xPath ya que los id de los mismos nunca son iguales (se
     * generan con junto con el valor de componentId que vara).
     */
    driver.findElement(By.xpath("//button[contains(@id,'createButton')]")).click();

    /**
     * Comando que duerme el Thread del test por 2 segundos para dejar que
     * el efecto 'slide down' de backbone abra el formulario de createSport.
     */
    Thread.sleep(2000);

    /**
     * Comando que busca el elemento 'name' en el html actual.
     * Posteriormente limpia su contenido (comando clean).
     */
    driver.findElement(By.id("name")).clear();
    /**
     * Comando que simula la escritura de un valor en el elemento(sendKeys)
     * con el String de parmetro sobre // el elemento encontrado.
     */
    driver.findElement(By.id("name")).sendKeys(name1);

    //Comandos para llenar el campo FECHACADUCIDAD
    driver.findElement(By.id("fechaCaducidad")).clear();
    driver.findElement(By.id("fechaCaducidad")).sendKeys(fechaCaducidad1);

    //Comando para seleccionar el checkbox
    //       driver.findElement(By.id("esPerecedero")).click();

    /**
     * Comandos para llenar el campo MOTIVOINGRESO
     */
    driver.findElement(By.id("motivoIngreso")).clear();
    driver.findElement(By.id("motivoIngreso")).sendKeys(motivoIngreso1);

    /**
     * Comandos para llenar el campo MOTIVOSALIDA
     */
    driver.findElement(By.id("motivoSalid")).clear();
    driver.findElement(By.id("motivoSalid")).sendKeys(motivoSalida1);

    /**
     * Comando que encuentra y hace clic sobre el boton "Save" del toolbar
     * (una vez mas encontrado por una expresin Xpath)
     */
    driver.findElement(By.xpath("//button[contains(@id,'saveButton')]")).click();

    /**
     * Comando que duerme el thread para esperar el efecto de slide down que
     * abre la lista
     */
    Thread.sleep(2000);
    /**
     * Comando que obtiene el div azul de creacin exitosa. Si se obtiene,
     * la prueba va bien, si no, saldr un error y la prueba quedar como
     * fllida.
     */
    WebElement dialog = driver.findElement(By.xpath("//div[contains(@style,'display: block;')]"));
    /**
     * Comando que obtiene la tabla con el elemento que se cre
     * anteriormente.
     */
    List<WebElement> table = driver
            .findElements(By.xpath("//table[contains(@class,'table striped')]/tbody/tr"));
    boolean sucess = false;
    /**
     * Se itera sobre los elementos de la tabla para ver si el nuevo
     * elemento creado est en la lista
     */
    for (WebElement webElement : table) {
        List<WebElement> elems = webElement.findElements(By.xpath("td"));

        if (elems.get(0).getText().equals(name1)
                && Integer.parseInt(elems.get(1).getText().split("/")[0]) == (Integer
                        .parseInt(fechaCaducidad1.split("/")[0]))
                && Integer.parseInt(elems.get(1).getText().split("/")[1]) == (Integer
                        .parseInt(fechaCaducidad1.split("/")[1]))
                && Integer.parseInt(elems.get(1).getText().split("/")[2]) == (Integer
                        .parseInt(fechaCaducidad1.split("/")[2]))
                && elems.get(3).getText().equals(motivoIngreso1)
                && elems.get(4).getText().equals(motivoSalida1)) {
            /**
             * si se encuentra la fila, la variable 'fail' pasa a true,
             * indicando que el elemento creado esta en la lista.
             */
            sucess = true;
        }

    }
    /**
     * la prueba es exitosa si se encontr el dialogo de creacin exitosa y
     * el nuevo elemento est en la lista.
     */
    assertTrue(dialog != null && sucess);
}

From source file:ItemTest.java

@Test
public void testUpdateProveedor() throws Exception {

    /**/*from  www . j ava 2 s .com*/
     * Se hace clic en el vinculo "Edit" del primer elemento de la lista de
     * sports
     */
    driver.findElement(By.linkText("Editar")).click();
    Thread.sleep(2000);
    /**
     * Se realiza el mismo proceso de diligenciamento de los campos con los
     * cambios
     */
    driver.findElement(By.id("name")).clear();
    driver.findElement(By.id("name")).sendKeys(name2);
    driver.findElement(By.id("fechaCaducidad")).clear();
    driver.findElement(By.id("fechaCaducidad")).sendKeys(fechaCaducidad2);
    driver.findElement(By.id("motivoIngreso")).clear();
    driver.findElement(By.id("motivoIngreso")).sendKeys(motivoIngreso2);
    driver.findElement(By.id("motivoSalid")).clear();
    driver.findElement(By.id("motivoSalid")).sendKeys(motivoSalida2);

    driver.findElement(By.xpath("//button[contains(@id,'saveButton')]")).click();
    Thread.sleep(2000);
    /**
     * Se verifica que en la lista de respuesta hallan aparecido los cambios
     * en el elemento y tambin el mensaje de edicin exitosa.
     */
    WebElement dialog = driver.findElement(By.xpath("//div[contains(@style,'display: block;')]"));
    List<WebElement> table = driver
            .findElements(By.xpath("//table[contains(@class,'table striped')]/tbody/tr"));
    boolean fail = false;
    for (WebElement webElement : table) {
        List<WebElement> elems = webElement.findElements(By.xpath("td"));

        if (elems.get(0).getText().equals(name2)
                && Integer.parseInt(elems.get(1).getText().split("/")[0]) == (Integer
                        .parseInt(fechaCaducidad2.split("/")[0]))
                && Integer.parseInt(elems.get(1).getText().split("/")[1]) == (Integer
                        .parseInt(fechaCaducidad2.split("/")[1]))
                && Integer.parseInt(elems.get(1).getText().split("/")[2]) == (Integer
                        .parseInt(fechaCaducidad2.split("/")[2]))
                && elems.get(3).getText().equals(motivoIngreso2)
                && elems.get(4).getText().equals(motivoSalida2)) {
            fail = true;
        }

    }
    assertTrue(dialog != null && fail);
}

From source file:ItemTest.java

@Test
public void testDeleteProveedor() throws Exception {
    /**/*  ww  w. j  a va2 s .co  m*/
     * Se hace clic en el vinculo "Delete" del primer elemento de la lista
     * de sports
     */
    driver.findElement(By.linkText("Eliminar")).click();
    Thread.sleep(2000);
    /**
     * Se verifica que en la lista el elemento halla desaparecido. Si
     * existe, hubo un error.
     */
    try {
        List<WebElement> table = driver
                .findElements(By.xpath("//table[contains(@class,'table striped')]/tbody/tr"));
        boolean fail = false;

        for (WebElement webElement : table) {
            List<WebElement> elems = webElement.findElements(By.xpath("td"));

            if (elems.get(0).getText().equals(name2)
                    && Integer.parseInt(elems.get(1).getText().split("/")[0]) == (Integer
                            .parseInt(fechaCaducidad2.split("/")[0]))
                    && Integer.parseInt(elems.get(1).getText().split("/")[1]) == (Integer
                            .parseInt(fechaCaducidad2.split("/")[1]))
                    && Integer.parseInt(elems.get(1).getText().split("/")[2]) == (Integer
                            .parseInt(fechaCaducidad2.split("/")[2]))
                    && elems.get(3).getText().equals(motivoIngreso2)
                    && elems.get(4).getText().equals(motivoSalida2)) {
                fail = true;
            }

        }

        WebElement dialog = driver.findElement(By.xpath("//div[contains(@style,'display: block;')]"));
        assertTrue(dialog != null && !fail);
    } catch (Exception e) {
        assertTrue(true);
    }

}

From source file:ItemTest.java

@Test
public void testListProveedores() throws Exception {
    /**/*  w ww.j  a va2 s .  c  o  m*/
     * Se crea un deporte con el test createSport
     */
    testCreateProveedor();

    /**
     * Se hace clic en el botn "refresh" del toolbar para obtener la lista.
     */
    driver.findElement(By.xpath("//button[contains(@id,'refreshButton')]")).click();
    Thread.sleep(2000);
    /**
     * Se verifica que el elemento creado anteriormente existe en la lista.
     */
    List<WebElement> table = driver
            .findElements(By.xpath("//table[contains(@class,'table striped')]/tbody/tr"));
    boolean fail = false;
    for (WebElement webElement : table) {
        List<WebElement> elems = webElement.findElements(By.xpath("td"));

        if (elems.get(0).getText().equals(name1)
                && Integer.parseInt(elems.get(1).getText().split("/")[0]) == (Integer
                        .parseInt(fechaCaducidad1.split("/")[0]))
                && Integer.parseInt(elems.get(1).getText().split("/")[1]) == (Integer
                        .parseInt(fechaCaducidad1.split("/")[1]))
                && Integer.parseInt(elems.get(1).getText().split("/")[2]) == (Integer
                        .parseInt(fechaCaducidad1.split("/")[2]))
                && elems.get(3).getText().equals(motivoIngreso1)
                && elems.get(4).getText().equals(motivoSalida1)) {
            fail = true;
        }

    }
    assertTrue(fail);
}

From source file:seleniumTester.java

@Test
public void test1() {
    (new WebDriverWait(driver, WAIT_MAX)).until((ExpectedCondition<Boolean>) (WebDriver d) -> {
        WebElement e = d.findElement(By.tagName("tbody"));
        List<WebElement> rows = e.findElements(By.tagName("tr"));

        return rows.size() == 5;
    });/*  w  w  w.j a v a  2  s .c  o m*/
}

From source file:seleniumTester.java

@Test
public void test2() throws Exception {
    WebElement element = driver.findElement(By.id("filter"));
    element.sendKeys("1999");
    (new WebDriverWait(driver, WAIT_MAX)).until(new ExpectedCondition<Boolean>() {
        public Boolean apply(WebDriver d) {
            WebElement e = d.findElement(By.tagName("tbody"));
            List<WebElement> rows = e.findElements(By.tagName("tr"));

            return rows.size() == 2;
        }//from ww  w.  j ava 2s.  co m
    });

}

From source file:seleniumTester.java

@Test
public void test3() {
    WebElement element = driver.findElement(By.id("filter"));
    element.sendKeys(Keys.CONTROL + "a");
    element.sendKeys(Keys.DELETE);//from  ww w . ja  v  a2s . co  m

    (new WebDriverWait(driver, WAIT_MAX)).until(new ExpectedCondition<Boolean>() {
        public Boolean apply(WebDriver d) {
            WebElement e = d.findElement(By.tagName("tbody"));
            List<WebElement> rows = e.findElements(By.tagName("tr"));

            Assert.assertThat(rows.size(), is(5));
            return rows.size() == 5;
        }
    });

}

From source file:seleniumTester.java

@Test
public void test_4() {
    WebElement element = driver.findElement(By.id("h_year"));
    element.click();//from w w  w . j av a 2 s. c  o m
    WebElement e = driver.findElement(By.tagName("tbody"));
    List<WebElement> rows = e.findElements(By.tagName("tr"));

    WebElement firstRow = rows.get(0);
    String firstRow_id = firstRow.findElement(By.tagName("td")).getText();
    WebElement lastRow = rows.get((rows.size() - 1));
    String lastRow_id = lastRow.findElement(By.tagName("td")).getText();

    Assert.assertThat(firstRow_id, is("938"));
    Assert.assertThat(lastRow_id, is("940"));
}

From source file:seleniumTester.java

@Test
public void test_5() {
    List<WebElement> tds = driver.findElement(By.id("tbodycars")).findElements(By.cssSelector("tr")).get(0)
            .findElements(By.tagName("td"));
    tds.get(7).findElements(By.tagName("a")).get(0).click();
    WebElement element = driver.findElement(By.id("description"));
    element.sendKeys(Keys.CONTROL + "a");
    element.sendKeys(Keys.DELETE);/*from  ww  w  .  j  ava 2 s  . c o m*/
    element.sendKeys("Cool car");
    driver.findElement(By.id("save")).click();

    (new WebDriverWait(driver, WAIT_MAX)).until(new ExpectedCondition<Boolean>() {
        public Boolean apply(WebDriver d) {
            WebElement e = d.findElement(By.tagName("tbody"));
            List<WebElement> rows = e.findElements(By.tagName("tr"));
            String result = null;
            for (int i = 0; i < rows.size(); i++) {
                if (rows.get(i).findElements(By.tagName("td")).get(0).getText().equalsIgnoreCase("938")) {
                    result = rows.get(i).findElements(By.tagName("td")).get(5).getText();
                    break;
                }
            }
            assertThat(result, is("Cool car"));
            return true;
        }
    });
}