17
Automatização de Testes com Selenium IDE Por Breno Oliveira www.brenooliveira.com.br @brenoholiveira

Automatização de testes com Selenium IDE

Embed Size (px)

DESCRIPTION

Treinamento interno da CSC para difundir conhecimento. No caso estamos falando sobre o Selenium IDE e criando um simples caso de teste.

Citation preview

Page 1: Automatização de testes com Selenium IDE

Automatização de Testes com Selenium IDE

Por Breno Oliveirawww.brenooliveira.com.br

@brenoholiveira

Page 2: Automatização de testes com Selenium IDE

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

Page 3: Automatização de testes com Selenium IDE

Como instalarO Selenium IDE é um plugin para o firefox

você pode fazer o download dele em:http://seleniumhq.org/download/

Selecione o Selenium IDE

Page 4: Automatização de testes com 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

Page 5: Automatização de testes com Selenium IDE

Interface Selenium IDETestes salvos

Abas de mensagens das execuções, guia para referencia entre outras coisas.

Page 6: Automatização de testes com Selenium IDE

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.

Page 7: Automatização de testes com Selenium IDE

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 .

Page 8: Automatização de testes com Selenium IDE

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.

Page 9: Automatização de testes com Selenium IDE

Criando teste no Selenium IDE

Page 10: Automatização de testes com Selenium IDE

Criando teste no Selenium IDE

Page 11: Automatização de testes com 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.

Page 12: Automatização de testes com Selenium IDE

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.

Page 13: Automatização de testes com Selenium IDE

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(); } }

Page 14: Automatização de testes com Selenium IDE

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

Page 15: Automatização de testes com Selenium IDE

Referênciashttp://seleniumhq.org/docs/

Page 16: Automatização de testes com Selenium IDE

Assuntos RelacionadoXPath

http://www.w3schools.com/xpath/

Page 17: Automatização de testes com Selenium IDE

Sobre o autorBreno Oliveira

www.brenooliveira.com.br/breno-oliveira@brenoholiveiraBreno26[at]gmail.com