Post on 13-Dec-2014
description
Automatização de Testes com Selenium IDE
Por Breno Oliveirawww.brenooliveira.com.br
@brenoholiveira
O que é?É uma suíte de ferramentas para
automatização de testes para aplicações web em múltipla plataformas.
Selenium é uma ferramenta que permite gravação/execução testes de telas sem aprender uma linguagem de testes.
Seus modulos são:Selenium IDESelenium RCSelenium CoreSelenium Grid
Como instalarO Selenium IDE é um plugin para o firefox
você pode fazer o download dele em:http://seleniumhq.org/download/
Selecione o Selenium IDE
Interface do Selenium IDEURL do site a ser testado
Execução de todas tasks de testeComandos a serem executados
Editar / Adicionar novos comandos
Gravar seqüência do teste
Interface Selenium IDETestes salvos
Abas de mensagens das execuções, guia para referencia entre outras coisas.
Interface Selenium IDESpeed Control: define o qual é a velocidade
do seu teste;Run All: Executa todas os comandos de teste;Run: Executa o comando atual;Pause/Resume: permite parar e re-iniciar os
casos de teste;Record: grava as ações do usuário no
navegador.
Interface Selenium IDE
Seu script é exibido no painel acima e ele é composto por duas partes. A parte a esquerda define a seqüência de comandos e a parte a direita define os parâmetros do comando selecionado. Nessa parte você pode editar.
Observe que na segunda aba podemos utilizar de Xpath para buscar nossos campos ou atributos .
Interface Selenium IDE
Command é o comando que você deseja executar existe uma lista de comandos possiveis;
Target é o objeto alvo por exemplo um campo de um formulario ou qualquer nó HTML;
Value é para adicionarmos um valor um campo do tipo input por exemplo.
Criando teste no Selenium IDE
Criando teste no Selenium IDE
O que estamos fazendo1. Open – Abre o endereço do site na URL Base no caso
ele abre a home do google por causo do /;2. ClickAndWait (link=Imagens)– Estamos dizendo ao
Selenium para abrir no caso um link que contenha a palavra Imagens.
3. verifyTitle – Estamos verificando qual é titulo da página no caso ele compara se é Imagens do Google;
4. ...5. Type – estamos dizendo para o selenium pegar um
campo do tipo input cujo o name é q e adiciona o texto breno oliveira.
6. clickAndWait – estamos informando ao selenium ide para clicar no botão cujo o name é btnG.
Gerando códigoO Selenium IDE permite que você gere ou
desenvolva programando com linguagens de programação conhecidas como:PythonRuby.NETPerl JavaPHP
No menu Opções -> Formato -> Escolha a sintac desejada.
Exemplo de Código Java public class SeleniumGoogle extends SeleneseTestCase { @Before public void setUp() throws Exception { selenium = new DefaultSelenium("localhost", "4444", "*chrome", "http://www.google.com.br/"); selenium.start(); }
@Test public void testSeleniumGoogle() throws Exception { selenium.open("/"); selenium.click("link=Imagens"); selenium.waitForPageToLoad("30000"); verifyEquals("Imagens do Google", selenium.getTitle()); selenium.click("link=Vídeos"); selenium.waitForPageToLoad("30000"); verifyEquals("Google Videos", selenium.getTitle()); selenium.click("link=Web"); selenium.waitForPageToLoad("30000"); verifyEquals("Google", selenium.getTitle()); selenium.type("q", "breno oliveira"); selenium.click("btnG"); selenium.waitForPageToLoad("30000"); }
@After public void tearDown() throws Exception { selenium.stop(); } }
ObservaçõesÉ importante ter uma massa de dados
conhecida, por exemplo caso você necessite se autenticar em algum sistema você precisa ter um usuário e uma senha.
É importante ter um padrão de código de interface conhecida
Assuntos RelacionadoXPath
http://www.w3schools.com/xpath/
Sobre o autorBreno Oliveira
www.brenooliveira.com.br/breno-oliveira@brenoholiveiraBreno26[at]gmail.com