Example usage for org.openqa.selenium By xpath

List of usage examples for org.openqa.selenium By xpath

Introduction

In this page you can find the example usage for org.openqa.selenium By xpath.

Prototype

public static By xpath(String xpathExpression) 

Source Link

Usage

From source file:co.edu.uniandes.csw.RigitalApp.test.EmpleadoTest.java

@Test
public void testCrearWiki() throws Exception {

    driver.findElement(By.xpath("//button[contains(@id,'button-create')]")).click();

    Thread.sleep(2000);//from w  ww  . jav a2  s . c om

    driver.findElement(By.id("name")).clear();

    driver.findElement(By.id("name")).sendKeys("Empleado1");

    Thread.sleep(2000);

    driver.findElement(By.id("login")).clear();
    driver.findElement(By.id("login")).sendKeys("Login1");

    Thread.sleep(2000);

    driver.findElement(By.id("password")).clear();
    driver.findElement(By.id("password")).sendKeys("contrasea");

    Thread.sleep(2000);

    driver.findElement(By.xpath("//button[contains(@id,'button-save')]")).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"));
        System.out.println("nombre: " + elems.get(1).getText() + " fecha: " + elems.get(2).getText());
        if (elems.get(0).getText().equals("Empleado1") && elems.get(1).getText().equals("Login1")) {
            /**
             * 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:co.edu.uniandes.csw.RigitalApp.test.EmpleadoTest.java

@AfterClass
public static void tearDown() throws Exception {

    // Se selecciona la tabla para eliminar todos sus elementos
    List<WebElement> table = driver
            .findElements(By.xpath("//table[contains(@class,'table-striped')]/tbody/tr"));

    /**//from w  w  w  .  j a  v  a2 s  .  co  m
     * Se itera sobre los elementos de la tabla para eliminarlos
     */
    for (WebElement webElement : table) {
        List<WebElement> elems = webElement.findElements(By.xpath("td"));
        elems.get(2).findElement(By.linkText("Eliminar")).click();
        assertTrue(true);
    }

    // Se cierra el navegador.
    driver.quit();
    // Se verifica que se haya cerrado efectivamente el navegador.
    String verificationErrorString = verificationErrors.toString();
    if (!"".equals(verificationErrorString)) {
        fail(verificationErrorString);
    }
}

From source file:co.edu.uniandes.csw.RigitalApp.test.EncargadoTest.java

@Test
public void testCrearEncargado() throws Exception {

    driver.findElement(By.xpath("//button[contains(@id,'button-create')]")).click();

    Thread.sleep(2000);/*from   www .  j  ava  2s. co m*/

    driver.findElement(By.id("name")).clear();

    driver.findElement(By.id("name")).sendKeys("Encargado1");

    Thread.sleep(2000);

    driver.findElement(By.id("login")).clear();
    driver.findElement(By.id("login")).sendKeys("Login1");

    Thread.sleep(2000);

    driver.findElement(By.xpath("//button[contains(@id,'button-save')]")).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"));
        System.out.println("nombre: " + elems.get(1).getText() + " fecha: " + elems.get(2).getText());
        if (elems.get(0).getText().equals("Encargado1") && elems.get(1).getText().equals("Login1")) {
            /**
             * 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:co.edu.uniandes.csw.RigitalApp.test.EstudianteTest.java

@Test
public void testCrearEstudiante() throws Exception {

    driver.findElement(By.xpath("//button[contains(@id,'button-create')]")).click();

    Thread.sleep(2000);/*ww w .  j  av  a2 s.c  om*/

    driver.findElement(By.id("name")).clear();

    driver.findElement(By.id("name")).sendKeys("Estudiante1");

    Thread.sleep(2000);

    driver.findElement(By.id("login")).clear();
    driver.findElement(By.id("login")).sendKeys("Login1");

    Thread.sleep(2000);

    driver.findElement(By.id("tipoAcceso")).clear();
    driver.findElement(By.id("tipoAcceso")).sendKeys("Tipo de acceso normal");

    Thread.sleep(2000);

    driver.findElement(By.xpath("//button[contains(@id,'button-save')]")).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"));
        System.out.println("nombre: " + elems.get(1).getText() + " fecha: " + elems.get(2).getText());
        if (elems.get(0).getText().equals("Estudiante1") && elems.get(1).getText().equals("Login1")) {
            /**
             * 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:co.edu.uniandes.csw.RigitalApp.test.MaquinaVirtualTest.java

@Test
public void testCrearMaquina() throws Exception {

    driver.findElement(By.xpath("//button[contains(@id,'button-create')]")).click();

    Thread.sleep(2000);/*  w w  w  . j av  a 2 s  . c  o m*/

    driver.findElement(By.id("name")).clear();

    driver.findElement(By.id("name")).sendKeys("Mquina virtual prueba");

    Thread.sleep(2000);

    driver.findElement(By.id("descripcion")).clear();
    driver.findElement(By.id("descripcion"))
            .sendKeys("Mquina virtual para uso del curso de desarrollo de software");

    Thread.sleep(2000);

    driver.findElement(By.id("fechaCreacion")).clear();
    driver.findElement(By.id("fechaCreacion")).sendKeys("22/11/2014");

    Thread.sleep(2000);

    driver.findElement(By.className("onoffswitch-label")).click();

    Thread.sleep(2000);

    driver.findElement(By.id("fechaVencimiento")).clear();
    driver.findElement(By.id("fechaVencimiento")).sendKeys("20/02/2015");

    Thread.sleep(2000);

    driver.findElement(By.id("ips")).clear();
    driver.findElement(By.id("ips")).sendKeys("172.24.99.108");

    Thread.sleep(2000);

    driver.findElement(By.id("serviciosAsociados")).clear();
    driver.findElement(By.id("serviciosAsociados")).sendKeys("Servidor web apache sobre el puerto 8083");

    Thread.sleep(2000);

    driver.findElement(By.id("sistemaOperativo")).clear();
    driver.findElement(By.id("sistemaOperativo")).sendKeys("Windows 8");

    Thread.sleep(2000);

    driver.findElement(By.id("numDiscos")).clear();
    driver.findElement(By.id("numDiscos")).sendKeys("1");

    Thread.sleep(2000);

    driver.findElement(By.id("capacidadDiscos")).clear();
    driver.findElement(By.id("capacidadDiscos")).sendKeys("1TB");

    Thread.sleep(2000);

    driver.findElement(By.id("ram")).clear();
    driver.findElement(By.id("ram")).sendKeys("8GB");

    Thread.sleep(2000);

    driver.findElement(By.id("numCores")).clear();
    driver.findElement(By.id("numCores")).sendKeys("2");

    Thread.sleep(2000);

    driver.findElement(By.xpath("//button[contains(@id,'button-save')]")).click();

    Thread.sleep(2000);

    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 sucess = false;
    System.out.println(table);

    for (WebElement webElement : table) {
        List<WebElement> elems = webElement.findElements(By.xpath("td"));
        System.out.println("nombre: " + elems.get(1).getText() + " fecha: " + elems.get(2).getText());
        if (elems.get(1).getText().equals("Mquina virtual prueba")
                && elems.get(2).getText().equals("22/11/2014") && elems.get(3).getText().equals("true")) {

            sucess = true;
        }

    }
    System.out.println(sucess);

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

From source file:co.edu.uniandes.csw.RigitalApp.test.MaquinaVirtualTest.java

@Test
public void testDesactivarMaquina() throws Exception {

    Thread.sleep(2000);// www. j av  a  2s .  c om

    List<WebElement> table = driver
            .findElements(By.xpath("//table[contains(@class,'table-striped')]/tbody/tr"));

    for (WebElement webElement : table) {
        List<WebElement> elems = webElement.findElements(By.xpath("td"));
        if (elems.get(3).getText().equals("true")) {
            elems.get(0).findElement(By.tagName("input")).click();
        }
    }
    Thread.sleep(2000);
    driver.findElement(By.xpath("//button[contains(@id,'button-desactivar')]")).click();

    driver.get(baseUrl + "/RigitalApp.web/maquinaVirtual.html");
    Thread.sleep(2000);
    List<WebElement> table2 = driver
            .findElements(By.xpath("//table[contains(@class,'table-striped')]/tbody/tr"));
    boolean def = true;
    for (WebElement webElement : table2) {
        List<WebElement> elems = webElement.findElements(By.xpath("td"));
        String val = elems.get(3).getText();
        boolean temp = !val.equals("true");
        System.out.println(temp);
        def = def && temp;
    }
    Thread.sleep(4000);
    assertTrue(def);
}

From source file:co.edu.uniandes.csw.RigitalApp.test.MaquinaVirtualTest.java

@Test
public void testBuscarMaquina() throws Exception {

    driver.findElement(By.xpath("//button[contains(@id,'button-search')]")).click();

    Thread.sleep(2000);/*  ww w. j  a v  a  2s.  c  o  m*/

    driver.findElement(By.id("btn_tableDestruido")).click();

    Thread.sleep(2000);

    driver.findElement(By.id("destruido")).click();

    Thread.sleep(2000);

    driver.findElement(By.id("btn_ips")).click();

    Thread.sleep(2000);

    driver.findElement(By.id("ips")).clear();
    driver.findElement(By.id("ips")).sendKeys("24.99");

    Thread.sleep(2000);

    driver.findElement(By.xpath("//button[contains(@id,'button-exec-search')]")).click();

    Thread.sleep(2000);

    List<WebElement> table = driver
            .findElements(By.xpath("//table[contains(@class,'table-striped')]/tbody/tr"));
    boolean success = true;

    for (WebElement webElement : table) {
        List<WebElement> elems = webElement.findElements(By.xpath("td"));
        success = success && elems.get(1).getText().contains("virtual");
    }

    assertTrue(success);
}

From source file:co.edu.uniandes.csw.RigitalApp.test.MaquinaVirtualTest.java

@AfterClass
public static void tearDown() throws Exception {

    driver.get(baseUrl + "/RigitalApp.web/maquinaVirtual.html");
    // Se selecciona la tabla para eliminar todos sus elementos
    List<WebElement> table = driver
            .findElements(By.xpath("//table[contains(@class,'table-striped')]/tbody/tr"));

    /**/* ww  w.  j  a  v a2 s .co  m*/
     * Se itera sobre los elementos de la tabla para eliminarlos
     */
    for (WebElement webElement : table) {
        List<WebElement> elems = webElement.findElements(By.xpath("td"));
        elems.get(5).findElement(By.linkText("Eliminar")).click();
        assertTrue(true);
    }

    // Se cierra el navegador.
    driver.quit();
    // Se verifica que se haya cerrado efectivamente el navegador.
    String verificationErrorString = verificationErrors.toString();
    if (!"".equals(verificationErrorString)) {
        fail(verificationErrorString);
    }
}

From source file:co.edu.uniandes.csw.RigitalApp.test.MySQLTest.java

@Test
public void testCrearMaquina() throws Exception {

    driver.findElement(By.xpath("//button[contains(@id,'button-create')]")).click();

    Thread.sleep(2000);/*from  w ww  .ja v  a  2 s.com*/

    driver.findElement(By.id("name")).clear();

    driver.findElement(By.id("name")).sendKeys("Imagine");

    Thread.sleep(2000);

    driver.findElement(By.id("descripcion")).clear();
    driver.findElement(By.id("descripcion")).sendKeys("Base de datos para el sitio Imagine");

    Thread.sleep(2000);

    driver.findElement(By.id("fechaCreacion")).clear();
    driver.findElement(By.id("fechaCreacion")).sendKeys("22/11/2014");

    Thread.sleep(2000);

    driver.findElement(By.className("onoffswitch-label")).click();

    Thread.sleep(2000);

    driver.findElement(By.id("servidor")).clear();
    driver.findElement(By.id("servidor")).sendKeys("sistemas.uniandes.edu.co");

    Thread.sleep(2000);

    driver.findElement(By.xpath("//button[contains(@id,'button-save')]")).click();

    Thread.sleep(2000);

    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 sucess = false;
    System.out.println(table);

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

        if (elems.get(1).getText().equals("Imagine") && elems.get(2).getText().equals("22/11/2014")
                && elems.get(3).getText().equals("true")) {

            sucess = true;
        }

    }
    System.out.println(sucess);

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

From source file:co.edu.uniandes.csw.RigitalApp.test.MySQLTest.java

@Test
public void testDesactivarMaquina() throws Exception {

    Thread.sleep(2000);/* www .j a v a2 s. c  o  m*/

    List<WebElement> table = driver
            .findElements(By.xpath("//table[contains(@class,'table-striped')]/tbody/tr"));

    for (WebElement webElement : table) {
        List<WebElement> elems = webElement.findElements(By.xpath("td"));
        if (elems.get(3).getText().equals("true")) {
            elems.get(0).findElement(By.tagName("input")).click();
        }
    }
    Thread.sleep(2000);
    driver.findElement(By.xpath("//button[contains(@id,'button-desactivar')]")).click();

    driver.get(baseUrl + "/RigitalApp.web/mySQL.html");
    Thread.sleep(2000);
    List<WebElement> table2 = driver
            .findElements(By.xpath("//table[contains(@class,'table-striped')]/tbody/tr"));
    boolean def = true;
    for (WebElement webElement : table2) {
        List<WebElement> elems = webElement.findElements(By.xpath("td"));
        String val = elems.get(3).getText();
        boolean temp = !val.equals("true");
        System.out.println(temp);
        def = def && temp;
    }
    Thread.sleep(4000);
    assertTrue(def);
}