Bom para esclarecer algumas dúvidas, geralmente quando configuramos toda a biblioteca WebDriver, já está contida na pasta Libs o JUnit, então vamos verificar se já temos adicionado:
- Botão direito no projeto
- Build Path
- Libraries
- Procure por junit-versão.jar
Com isto você já pode utilziar, então vamos criar nosso primeiro teste utilizando WebDriver e Junit, para isto vamos utilizar nosso Projeto criado anteriormente.
- Botão Direito no seu Package
- Novo (New)
- JUnit Test Case (Caso não apareça clique em outros(Other) –> Java –> Junit –> Junit Test Case)
- E vamos inserir um nome: Primeiro_Teste_JUnit
- Finish
Ai está! Agora vamos ver o que é @Test @Before e @After:
Diferença entre @Before e @BeforeClass:
- @Before é uma anotação que será sempre executada antes de cada @Test Método ou seja se você possui 7 @Teste o @Before será executado 7 vezes.
- @BeforeClass é uma anotação que será executada apenas uma vez na classe ou seja se você possui 7@Teste o @BeforeClass será executado apenas 1 vez.
Diferença entre @After e AfterClass:
- @After é uma anotação que será sempre executada depois de cada@Test ou seja se possui 7 @Test serão executados 7 vezes após cada @Test o @After
- @AfterClass será executado apenas um vez depois do @Test, mesmo que possua 2 ou mais @Test
E o @Test é seu teste em si, o que você deseja validar.
Vamos agora a um exemplo com @Before e @After
[startCode]
package Testes;
import org.junit.After;
import org.junit.Before;
import org.junit.Test;
import org.openqa.selenium.By;
import org.openqa.selenium.WebDriver;
import org.openqa.selenium.firefox.FirefoxDriver;
public class Primeiro_Teste_JUnit {
private static WebDriver driver;
@Before
public void abrirnavegador() {
System.out.print(“\nNavegador foi Aberto”);
driver = new FirefoxDriver();
driver.manage().window().maximize();
driver.get(“http://quatest.com.br/Exemplos/Inicio_Automacao/calculadora.html”);
}
@After
public void fecharnavegador() {
System.out.print(“\nNavegador foi Fechado”);
driver.quit();
}
@Test
public void teste01() throws InterruptedException{
driver.findElement(By.xpath(“//input[@id=’botao2′]”)).click();
driver.findElement(By.xpath(“//input[@id=’botao*’]”)).click();
driver.findElement(By.xpath(“//input[@id=’botao8′]”)).click();
driver.findElement(By.xpath(“//input[@id=’botao=’]”)).click();
String resultado = driver.findElement(By.xpath(“//input[@id=’calculo’]”)).getAttribute(“value”);
System.out.println(“Resultado do Calculo é : ” + resultado);
}
@Test
public void teste02() throws InterruptedException {
driver.findElement(By.xpath(“//input[@id=’botao5′]”)).click();
driver.findElement(By.xpath(“//input[@id=’botao*’]”)).click();
driver.findElement(By.xpath(“//input[@id=’botao1′]”)).click();
driver.findElement(By.xpath(“//input[@id=’botao=’]”)).click();
String resultado = driver.findElement(By.xpath(“//input[@id=’calculo’]”)).getAttribute(“value”);
System.out.println(“\nResultado do Calculo é : ” + resultado);
}
}
[endCode]
[divider style=”dashed” top=”20″ bottom=”20″]
Vamos agora a um exemplo com @BeforeClass e @AfterClass
[startCode]
package Testes;
import org.junit.AfterClass;
import org.junit.BeforeClass;
import org.junit.Test;
import org.openqa.selenium.By;
import org.openqa.selenium.WebDriver;
import org.openqa.selenium.firefox.FirefoxDriver;
public class Primeiro_Teste_JUnit {
private static WebDriver driver;
@BeforeClass
public static void abrirnavegador() {
System.out.print(“\nNavegador foi Aberto”);
driver = new FirefoxDriver();
driver.manage().window().maximize();
driver.get(“http://quatest.com.br/Exemplos/Inicio_Automacao/calculadora.html”);
}
@AfterClass
public static void fecharnavegador() {
System.out.print(“\nNavegador foi Fechado”);
driver.quit();
}
@Test
public void teste01() throws InterruptedException{
driver.findElement(By.xpath(“//input[@id=’botao2′]”)).click();
driver.findElement(By.xpath(“//input[@id=’botao*’]”)).click();
driver.findElement(By.xpath(“//input[@id=’botao8′]”)).click();
driver.findElement(By.xpath(“//input[@id=’botao=’]”)).click();
String resultado = driver.findElement(By.xpath(“//input[@id=’calculo’]”)).getAttribute(“value”);
System.out.println(“\nResultado do Calculo é : ” + resultado);
}
@Test
public void teste02() throws InterruptedException {
driver.findElement(By.xpath(“//input[@id=’rest’]”)).click();
driver.findElement(By.xpath(“//input[@id=’botao5′]”)).click();
driver.findElement(By.xpath(“//input[@id=’botao*’]”)).click();
driver.findElement(By.xpath(“//input[@id=’botao1′]”)).click();
driver.findElement(By.xpath(“//input[@id=’botao=’]”)).click();
String resultado = driver.findElement(By.xpath(“//input[@id=’calculo’]”)).getAttribute(“value”);
System.out.println(“\nResultado do Calculo é : ” + resultado);
}
}
[endCode]
Agora faça os testes e veja a diferença e comente o que aconteceu! Até a próxima com: Locators no WebDriver
More from Web Automation
Automação de testes web com Docker 2!
Agora que aprendemos como utilizar o Docker e seu container vamos configurar nosso projeto para apontar os testes para este …
Automação de testes web com DockerAutomação de testes web com Docker!
E ai pessoal tudo bom? Que tal avançar um pouco sua automação de testes e dockerizar todo o ambiente? Vamos iniciar …
Primeiros contatos com o script automatizado
Olá, Tudo bem? No post anterior, desta série de Automação de Testes Funcionais em Aplicativos Móveis com foco em iOS, demonstrei o equivalente …
2 Comments
Comecei a estudar automação para melhorar minhas experiências com testes, estou gostando e muito, seu site está de parabéns, foi onde encontrei mais conteúdo.
Que bom Milton, ficamos feliz em ajudar, qualquer dúvida estamos a disposição!