Selenium: visão geral

8.967 visualizações

Publicada em

Uma apresentação introdutória sobre o Selenium, um conjunto de ferramentas para apoio à execução de testes funcionais automatizados.

Publicada em: Tecnologia
0 comentários
2 gostaram
Estatísticas
Notas
  • Seja o primeiro a comentar

Sem downloads
Visualizações
Visualizações totais
8.967
No SlideShare
0
A partir de incorporações
0
Número de incorporações
80
Ações
Compartilhamentos
0
Downloads
213
Comentários
0
Gostaram
2
Incorporações 0
Nenhuma incorporação

Nenhuma nota no slide

Selenium: visão geral

  1. 1. SELENIUM: visão geral Marcelo Andrade
  2. 2. Testes de software SELENIUM: visão geral
  3. 3. Testes de software Técnicas ● caixa preta ● caixa branca Fases ● Unitários ● Integração ● Sistema ● Desempenho ● Funcionais SELENIUM: visão geral
  4. 4. Selenium SELENIUM suíte de ferramentas para automatização de testes de aplicações web em múltiplas plataformas. http://seleniumhq.org SELENIUM: visão geral
  5. 5. Selenium SELENIUM suíte de ferramentas para automatização de testes de aplicações web em múltiplas plataformas. http://seleniumhq.org SELENIUM: visão geral
  6. 6. Selenium SELENIUM suí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 ... SELENIUM: visão geral
  7. 7. Talk is cheap. Show me the code. SELENIUM: visão geral
  8. 8. Talk is cheap. Show me the code. SELENIUM: visão geral
  9. 9. Talk is cheap. Show me the code. 1. no campo “usuario” digitar “admin” SELENIUM: visão geral
  10. 10. Talk is cheap. Show me the code. 2. no campo “senha” digitar “123456” SELENIUM: visão geral
  11. 11. Talk is cheap. Show me the code. 3. clicar no botão “Confirmar” SELENIUM: visão geral
  12. 12. Talk is cheap. Show me the code. 4. verificar se surge na tela a indicação “USUÁRIO: ADMINISTRADOR DO SISTEMA” SELENIUM: visão geral
  13. 13. Talk is cheap. Show me the code. SELENIUM: visão geral
  14. 14. Talk is cheap. Show me the code. SELENIUM: visão geral
  15. 15. Considerações 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? SELENIUM: visão geral
  16. 16. Considerações 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. SELENIUM: visão geral
  17. 17. Considerações 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? SELENIUM: visão geral
  18. 18. Considerações 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. SELENIUM: visão geral
  19. 19. Considerações SELENIUM: visão geral
  20. 20. Considerações verificar se, neste local, aparece a palavra “Recursos” SELENIUM: visão geral
  21. 21. Considerações SELENIUM: visão geral
  22. 22. Seleniums SELENIUM: visão geral
  23. 23. Seleniums 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. SELENIUM: visão geral
  24. 24. Seleniums SELENIUM: visão geral
  25. 25. Seleniums 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. SELENIUM: visão geral
  26. 26. Seleniums SELENIUM: visão geral
  27. 27. Seleniums SELENIUM CORE Trata-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: visão geral
  28. 28. Seleniums SELENIUM CORE SELENIUM: visão geral
  29. 29. Seleniums SELENIUM CORE Trata-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: visão geral
  30. 30. Seleniums SELENIUM CORE Trata-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 GRID Possibilita 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. SELENIUM: visão geral
  31. 31. Seleniums SELENIUM CORE Trata-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 GRID Possibilita 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 TEST Similar ao Selenium IDE, mas integrado ao ambiente Eclipse. SELENIUM: visão geral
  32. 32. Alguns comandos do Selenium IDE SELENIUM: visão geral
  33. 33. Alguns comandos do Selenium IDE 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) SELENIUM: visão geral
  34. 34. Alguns comandos do Selenium IDE 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 SELENIUM: visão geral
  35. 35. Referências Página oficial do Selenium http://seleniumhq.org http://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ências http://www.seuenium.com.br/ http://www.testexpert.com.br/?q=node/591 http://blog.caelum.com.br/2007/02/28/testes-de-aceitacao-com-o-selenium/ http://www.dicas-l.com.br/dicas-l/20080207.php http://gc.blog.br/tag/selenium/ http://blog.seatecnologia.com.br/tag/selenium http://en.wikipedia.org/wiki/Selenium_(software) http://www.google.com.br/search?q=selenium :-P SELENIUM: visão geral
  36. 36. OBRIGADO! SELENIUM: visão geral
  37. 37. OBRIGADO! MARCELO F ANDRADE marcelo.andrade@serpro.gov.br SELENIUM: visão geral

×