selenium: visão geral
DESCRIPTION
Uma apresentação introdutória sobre o Selenium, um conjunto de ferramentas para apoio à execução de testes funcionais automatizados.TRANSCRIPT
SELENIUM:visão geral
Marcelo Andrade
Testes de software
SELENIUM: visão geral
Testes de software
SELENIUM: visão geral
Técnicas● caixa preta● caixa branca
Fases● Unitários● Integração● Sistema● Desempenho● Funcionais
Selenium
SELENIUM: visão geral
SELENIUMsuíte de ferramentas para automatização de testes de aplicações web em múltiplas plataformas.
http://seleniumhq.org
Selenium
SELENIUM: visão geral
SELENIUMsuíte de ferramentas para automatização de testes de aplicações web em múltiplas plataformas.
http://seleniumhq.org
Selenium
SELENIUM: visão geral
SELENIUMsuíte de ferramentas para automatização de testes de aplicações web em múltiplas plataformas.
Selenium IDE Selenium Core Selenium Remote-Control Selenium Grid ...
Talk is cheap. Show me the code.
SELENIUM: visão geral
Talk is cheap. Show me the code.
SELENIUM: visão geral
Talk is cheap. Show me the code.
SELENIUM: visão geral
1. no campo “usuario” digitar “admin”
Talk is cheap. Show me the code.
SELENIUM: visão geral
2. no campo “senha” digitar “123456”
Talk is cheap. Show me the code.
SELENIUM: visão geral
3. clicar no botão “Confirmar”
Talk is cheap. Show me the code.
SELENIUM: visão geral
4. verificar se surge na tela a indicação “USUÁRIO: ADMINISTRADOR DO
SISTEMA”
Talk is cheap. Show me the code.
SELENIUM: visão geral
Talk is cheap. Show me the code.
SELENIUM: visão geral
Considerações
SELENIUM: visão geral
1. É importante ter uma massa de dados de entrada conhecida
Como saber se “admin/123456” o login deve ser efetuado ou não? O caso deveria ser de sucesso ou de falha?
Considerações
SELENIUM: visão geral
1. É importante ter uma massa de dados de entrada conhecida
Como saber se “admin/123456” o login deve ser efetuado ou não? O caso deveria ser de sucesso ou de falha?
→ scripts de automatização e versionamento de bancos de dados são chamados de fixtures.
Considerações
SELENIUM: visão geral
2. É importante ter um padrão de código para interface conhecido
Como alguém diferente do implementador saberia que o nome do botão “Confirmar” seria btnLogin?
Considerações
SELENIUM: visão geral
2. É importante ter um padrão de código para interface conhecido
Como alguém diferente do implementador saberia que o nome do botão “Confirmar” seria btnLogin?
→ bom uso da semântica e dos padrões web também impacta também em maior qualidade do código, melhor acessibilidade, usabilidade, etc.
Considerações
SELENIUM: visão geral
Considerações
SELENIUM: visão geral
verificar se, neste local, aparece a palavra “Recursos”
Considerações
SELENIUM: visão geral
Seleniums
SELENIUM: visão geral
Seleniums
SELENIUM: visão geral
SELENIUM IDE
É um ambiente de desenvolvimento integrado, disponível como plugin do Mozilla Firefox, utilizado para facilitar a geração de casos de teste em interfaces web.
Seleniums
SELENIUM: visão geral
Seleniums
SELENIUM: visão geral
SELENIUM REMOTE-CONTROL
É um servidor, escrito em Java, que é capaz de receber e interpretar as chamadas a comandos do Selenium e executá-las “ao vivo” dentro de um navegador web.
Seleniums
SELENIUM: visão geral
Seleniums
SELENIUM: visão geral
SELENIUM CORETrata-se apenas do núcleo, comum tanto ao Selenium IDE quanto ao RC. Interpreta os testes no formato HTML dinâmico. Tem a vantagem de permitir a execução de testes junto com a aplicação em outros ambientes além do de desenvolvimento.
Seleniums
SELENIUM: visão geral
SELENIUM CORE
Seleniums
SELENIUM: visão geral
SELENIUM CORETrata-se apenas do núcleo, comum tanto ao Selenium IDE quanto ao RC. Interpreta os testes no formato HTML dinâmico. Tem a vantagem de permitir a execução de testes junto com a aplicação em outros ambientes além do de desenvolvimento.
Seleniums
SELENIUM: visão geral
SELENIUM CORETrata-se apenas do núcleo, comum tanto ao Selenium IDE quanto ao RC. Interpreta os testes no formato HTML dinâmico. Tem a vantagem de permitir a execução de testes junto com a aplicação em outros ambientes além do de desenvolvimento.
SELENIUM GRIDPossibilita integrar vários Selenium RC em paralelo, permitindo a execução em escala. Útil para simular um ambiente mais próximo do real em testes de desempenho.
Seleniums
SELENIUM: visão geral
SELENIUM CORETrata-se apenas do núcleo, comum tanto ao Selenium IDE quanto ao RC. Interpreta os testes no formato HTML dinâmico. Tem a vantagem de permitir a execução de testes junto com a aplicação em outros ambientes além do de desenvolvimento.
SELENIUM GRIDPossibilita integrar vários Selenium RC em paralelo, permitindo a execução em escala. Útil para simular um ambiente mais próximo do real em testes de desempenho.
CUBIC TESTSimilar ao Selenium IDE, mas integrado ao ambiente Eclipse.
Alguns comandos do Selenium IDE
SELENIUM: visão geral
Alguns comandos do Selenium IDE
SELENIUM: visão geral
click(elemento)type(campo, valor)select(campo, opcao)... → todos têm a versão “...AndWait”
assertTextPresent(elemento, valor)assertTextNotPresent(elemento, valor)assertElementPresent(elemento)assertElementNotPresent(elemento)assertAlertPresent()assertAlertNotPresent()...captureEntirePageScreenshot(arquivo, args)
Alguns comandos do Selenium IDE
SELENIUM: visão geral
click(elemento)type(campo, valor)select(campo, opcao)... → todos têm a versão “...AndWait”
assertTextPresent(elemento, valor)assertTextNotPresent(elemento, valor)assertElementPresent(elemento)assertElementNotPresent(elemento)assertAlertPresent()assertAlertNotPresent()...captureEntirePageScreenshot(arquivo, args)
http://seleniumhq.org/docs/04_selenese_commands.html
Referências
SELENIUM: visão geral
Página oficial do Seleniumhttp://seleniumhq.orghttp://seleniumhq.org/docs/http://seleniumhq.org/projects/ide/http://seleniumhq.org/projects/remote-control/http://selenium-grid.seleniumhq.org/http://cubictest.seleniumhq.org/
Outras referênciashttp://www.seuenium.com.br/http://www.testexpert.com.br/?q=node/591http://blog.caelum.com.br/2007/02/28/testes-de-aceitacao-com-o-selenium/http://www.dicas-l.com.br/dicas-l/20080207.phphttp://gc.blog.br/tag/selenium/http://blog.seatecnologia.com.br/tag/seleniumhttp://en.wikipedia.org/wiki/Selenium_(software)http://www.google.com.br/search?q=selenium :-P
SELENIUM: visão geral
OBRIGADO!