List of usage examples for org.openqa.selenium By xpath
public static By xpath(String xpathExpression)
From source file:ProveedorTest.java
@Test public void testListProveedores() throws Exception { /**//from www. j a va 2 s . com * Se crea un deporte con el test createSport */ testCreateProveedor(); String name = "Nombresito"; String email = "test@test.com"; String telefono = "1231235"; String direccion = "carrera 1 con calle 2"; String observaciones = "jejejejejeje"; /** * 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(name) && elems.get(1).getText().equals(email) && elems.get(2).getText().equals(telefono) && elems.get(3).getText().equals(direccion) && elems.get(4).getText().equals(observaciones)) { fail = true; } } assertTrue(fail); }
From source file:JUnitTestClass.java
@Test public void Test_Buttons_XPath() throws Exception { driver.findElement(By.xpath("//div[2]/p[2]/button")).click(); driver.findElement(By.xpath("//div[3]/p[2]/button")).click(); driver.findElement(By.xpath("//div[4]/p[2]/button")).click(); }
From source file:JUnitTestClass.java
@Test public void Test_Radio_Buttons_XPath() throws Exception { driver.findElement(By.xpath("(//input[@name='gender'])[2]")).click(); // Female driver.findElement(By.xpath("(//input[@name='gender'])[6]")).click(); // Other driver.findElement(By.xpath("(//input[@name='gender'])[8]")).click(); // Female driver.findElement(By.xpath("(//input[@name='gender'])[10]")).click(); // Male }
From source file:JUnitTestClass.java
@Test public void Assert_Text() throws Exception { // Breaking down the selection process. // By xpath, id, classname, name, css, etc ... By locator = By.xpath("//div[5]/div/p[3]"); // Stored in webelement. WebElement element = driver.findElement(locator); // Storing the target text. String text = "Lorem ipsum dolor sit amet, consectetur adipiscing elit. Sed augue tellus, consectetur sed ante ut, tincidunt convallis nunc."; // Asserting they are the same. assertEquals(text, element.getText()); }
From source file:InventarioTest.java
@Test public void testCreateProveedor() throws Exception { /**/*from ww w .ja v a2 s .c o 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); /** * 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)) { /** * 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:InventarioTest.java
@Test public void testUpdateProveedor() throws Exception { /**//from ww w . j av a 2s . c om * 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.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)) { fail = true; } } assertTrue(dialog != null && fail); }
From source file:InventarioTest.java
@Test public void testDeleteProveedor() throws Exception { /**//from w ww .j a v a2 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)) { 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:InventarioTest.java
@Test public void testListProveedores() throws Exception { /**// ww w. j av a 2s. c om * 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)) { fail = true; } } assertTrue(fail); }
From source file:OrdenFabricacionTest.java
@Test public void testCreateProveedor() throws Exception { /**/*from w ww.ja v a 2 s. c o 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 fecha driver.findElement(By.id("fecha")).clear(); driver.findElement(By.id("fecha")).sendKeys(fecha1); //Comando para seleccionar el checkbox // driver.findElement(By.id("esPerecedero")).click(); /** * Comandos para llenar el campo cantidad */ driver.findElement(By.id("cantidad")).clear(); driver.findElement(By.id("cantidad")).sendKeys(cantidad1); /** * Comandos para llenar el campo ESTADO */ driver.findElement(By.id("estado")).clear(); driver.findElement(By.id("estado")).sendKeys(estado1); /** * Comandos para llenar el campo nombreProducto */ driver.findElement(By.id("nombreProducto")).clear(); driver.findElement(By.id("nombreProducto")).sendKeys(nombreProducto1); /** * 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(fecha1.split("/")[0])) && Integer.parseInt( elems.get(1).getText().split("/")[1]) == (Integer.parseInt(fecha1.split("/")[1])) && Integer.parseInt( elems.get(1).getText().split("/")[2]) == (Integer.parseInt(fecha1.split("/")[2])) && elems.get(2).getText().equals(cantidad1) && elems.get(3).getText().equals(estado1) && elems.get(4).getText().equals(nombreProducto1)) { /** * 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:OrdenFabricacionTest.java
@Test public void testUpdateProveedor() throws Exception { /**//from ww w. j a v a 2 s . c om * 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("fecha")).clear(); driver.findElement(By.id("fecha")).sendKeys(fecha2); driver.findElement(By.id("cantidad")).clear(); driver.findElement(By.id("cantidad")).sendKeys(cantidad2); driver.findElement(By.id("estado")).clear(); driver.findElement(By.id("estado")).sendKeys(estado2); driver.findElement(By.id("nombreProducto")).clear(); driver.findElement(By.id("nombreProducto")).sendKeys(nombreProducto2); 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(fecha2.split("/")[0])) && Integer.parseInt( elems.get(1).getText().split("/")[1]) == (Integer.parseInt(fecha2.split("/")[1])) && Integer.parseInt( elems.get(1).getText().split("/")[2]) == (Integer.parseInt(fecha2.split("/")[2])) && elems.get(2).getText().equals(cantidad2) && elems.get(3).getText().equals(estado2) && elems.get(4).getText().equals(nombreProducto2)) { fail = true; } } assertTrue(dialog != null && fail); }