Automação Web — Criando o projeto Java + gradle + IntelliJ
Vamos criar um projeto de automação web utilizando java, gradle e IntellJ
Requisitos:
- IntelliJ
- WebDriver
- Ambiente Preparado (Acesse o material de preparo do ambiente)
Vamos à prática:
- Baixe e instale o IntelliJ (https://www.jetbrains.com/idea/download/);
- Baixe o driver do Chrome ( https://www.seleniumhq.org/download/);
- Prepare o ambiente (conforme este artigo);
- Abra o IntelliJ;
- Clique em “New Project”;
- No menu lateral selecione Gradle;
- No corpo marque “java” e “plugin IntelliJ”;
8. Clique em “Next”;
9. Preencha as informações de group, artfactId e versão e clique em “Next”;
10. Marque “use auto-import”;
11. Nomeie o projeto, escolha o local para salvar e o IntelliJ cria a pasta para salvar;
12. Acessar no computador a pasta onde criou o projeto;
13. Criar uma pasta chamada “driver”;
14. Colocar o chromedriver dentro;
15. Abra “build.gradle”;
16. Insira em dependencies:
dependencies {
testCompile group: ‘junit’, name: ‘junit’, version: ‘4.12’
testCompile group: ‘org.seleniumhq.selenium’, name: ‘selenium-java’, version: ‘2.53.0’
}
17. Acesse o menu lateral do IntelliJ em que aparecem as pastas do projeto. Clique com o botão direito sobre a pasta java que está dentro de test.
18. Escolha New/Package e insira o nome do pacote e clique em ok;
19. Clique com o botão direito sobre o pacote e escolha a opção New > Java Class;
20. Abra a classe;
Dentro das chaves da classe vamos configurar o que acontecerá antes e depois de cada teste utilizando as tags Before e After.
21. Escreva dentro das chaves do projeto
public static WebDriver driver;
public static WebDriverWait wait;
@Before
public void before(){
System.setProperty(“webdriver.chrome.driver”, “./driver/chromedriver.exe”);
driver = new ChromeDriver();
wait = new WebDriverWait(driver, 10);
driver.get(“https://google.com.br/");
driver.manage().window().maximize();
}
Entender o que acontece aqui é bem intuitivo. O Before é o que vai acontecer antes de cada teste.
Está configurado que antes de cada teste é preciso iniciar o driver do navegador e dizemos onde ele está, o wait diz quanto tempo eu espero por uma ação, o get diz qual página da web estamos testando e depois maximizamos a janela do navegador.
22. Abaixo escreva
@After
public void after(){
driver.quit();
}
Esta parte também é bem intuitiva. Após cada teste deverá fechar a janela do navegador.
23. Abaixo escreva:
@Test
public void comecandoOTesteAutomatizado(){
/**Aqui vamos apenas abrir o navegador,
* um pequeno ato para a automação, mas um grande avanço para o automatizador!
*/
}
Esta tag é a que a gente usa para realmente testar. É onde a gente descreve o que quer que seja feito no navegador, onde clicar, onde escrever e tudo mais que o teste precisa.
24. Agora que já temos um projeto criado para executar o teste basta clicar no botão de “play” ao lado da tag.
Agora que já abriu o navegador e fechou, podemos criar os cenários de teste automatizado utilizando para cada um uma tag de teste diferente.
Para realizar os testes precisamos entender como inspecionar elementos, interagir com eles e validar os resultados.
Para entender melhor a inspeção de elementos em testes automatizados leia este artigo.