Primeiros Passos em
Automação de Testes
Stefan Teixeira
@stefan_teixeira
stefanfk@gmail.com
stefanteixeira.com.br
stefante...
About me
Stefan Teixeira
• QA Engineer @ M4U
• Entusiasta de Automação de Testes, Agile Testing e
DevOps
• Blogs técnicos:...
Vocês automatizam
testes?
Estágios iniciais de automação
Automação hardcore
Pirâmide de
Automação de Testes
Pirâmide de Automação de Testes
Mike Cohn - Succeeding With Agile
Cuidado!
Testes de UI são mais lentos!
Anti-patterns
Tempo de
feedback
E quando o feedback é
lento?
• Perda de confiança do time
E quando o feedback é
lento?
• Perda de confiança do time
• Time deixa de rodar os testes
E quando o feedback é
lento?
• Perda de confiança do time
• Time deixa de rodar os testes
Importância do tempo de
build/feedback
• XP (Extreme Programming)
➡ 10-minute build
Importância do tempo de
build/feedback
• XP (Extreme Programming)
➡ 10-minute build
• James Shore (The Art of Agile
Develo...
“That's about the right amount of
time to stretch my legs, get some
coffee, and talk over our work
with my pairing partner...
Testes de Unidade
• Rodam MUITO rápido = feedback
mais rápido!
Testes de Unidade
• Rodam MUITO rápido = feedback
mais rápido!
• Ótimos para testar valores limite
ou combinações de desvi...
Testes de Unidade
• Boa quantidade e cobertura de
testes = menor necessidade de
testes exaustivos pela UI
Testes de Unidade
• Boa quantidade e cobertura de
testes = menor necessidade de
testes exaustivos pela UI
• Te oferecerem ...
Cobertura de código: dicas
• “High coverage numbers are too
easy to reach with low quality
testing” (Martin Fowler)
Cobertura de código: dicas
• “High coverage numbers are too
easy to reach with low quality
testing” (Martin Fowler)
• Cobe...
Cobertura de código: dicas
• “High coverage numbers are too
easy to reach with low quality
testing” (Martin Fowler)
• Cobe...
Ferramentas
Testes no nível de Serviço
• Preencher o gap entre Unidade e
UI
Testes no nível de Serviço
• Preencher o gap entre Unidade e
UI
• Testar regras de negócio “abaixo”
da UI, sem depender da...
Testes no nível de Serviço
• Preencher o gap entre Unidade e
UI
• Testar regras de negócio “abaixo”
da UI, sem depender da...
Testes no nível de Serviço:
Tipos
• Testes de Componente /
Integração
Testes no nível de Serviço:
Tipos
• Testes de Componente /
Integração
• Testes de WebServices / APIs
Testes no nível de Serviço:
Tipos
• Testes de Componente /
Integração
• Testes de WebServices / APIs
• Testes de Contrato
Ferramentas
Testes pela UI
• Mais lentos/frágeis, feedback
lento
Testes pela UI
• Mais lentos/frágeis, feedback
lento
• Ponto de vista do usuário final
Testes pela UI
• Mais lentos/frágeis, feedback
lento
• Ponto de vista do usuário final
• Focar nos cenários mais
important...
Testes pela UI: Tipos
• Cross Browser Testing
• Cross Browser Testing
• Headless Testing
Testes pela UI: Tipos
• Cross Browser Testing
• Headless Testing
• Visual Regression Testing
Testes pela UI: Tipos
Visual Regression Testing:
como é?
Ferramentas: xBrowser/
Headless Testing
Ferramentas: Mobile UI Testing
Ferramentas: Visual Regression
Testing
Hands-on
• Projeto de exemplo: https://
github.com/stefanteixeira/
primeiros-passos-automacao-
testes
• JUnit + REST-Assured + Sele...
Livros Recomendados
Obrigado!
Stefan Teixeira
@stefan_teixeira
stefanfk@gmail.com
stefanteixeira.com.br
stefanteixeira.com
Dezembro 2015 - Primeiros Passos em Automação de Testes
Dezembro 2015 - Primeiros Passos em Automação de Testes
Dezembro 2015 - Primeiros Passos em Automação de Testes
Dezembro 2015 - Primeiros Passos em Automação de Testes
Dezembro 2015 - Primeiros Passos em Automação de Testes
Dezembro 2015 - Primeiros Passos em Automação de Testes
Próximos SlideShares
Carregando em…5
×

Dezembro 2015 - Primeiros Passos em Automação de Testes

33 visualizações

Publicada em

Palestra apresentada no encontro de dezembro pelo Stefan Teixeira - www.slideshare.net/stefanteixeira

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

  • Seja a primeira pessoa a gostar disto

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

Nenhuma nota no slide

Dezembro 2015 - Primeiros Passos em Automação de Testes

  1. 1. Primeiros Passos em Automação de Testes Stefan Teixeira @stefan_teixeira stefanfk@gmail.com stefanteixeira.com.br stefanteixeira.com
  2. 2. About me Stefan Teixeira • QA Engineer @ M4U • Entusiasta de Automação de Testes, Agile Testing e DevOps • Blogs técnicos: stefanteixeira.com.br (pt-br) / stefanteixeira.com (en) Contatos: • E-mail: stefanfk@gmail.com • Twitter: twitter.com/stefan_teixeira • Facebook: facebook.com/stefan.teixeira • LinkedIn: linkedin.com/in/stefanteixeira • GitHub: github.com/stefanteixeira • SlideShare: slideshare.net/stefanteixeira
  3. 3. Vocês automatizam testes?
  4. 4. Estágios iniciais de automação
  5. 5. Automação hardcore
  6. 6. Pirâmide de Automação de Testes
  7. 7. Pirâmide de Automação de Testes Mike Cohn - Succeeding With Agile
  8. 8. Cuidado!
  9. 9. Testes de UI são mais lentos!
  10. 10. Anti-patterns
  11. 11. Tempo de feedback
  12. 12. E quando o feedback é lento? • Perda de confiança do time
  13. 13. E quando o feedback é lento? • Perda de confiança do time • Time deixa de rodar os testes
  14. 14. E quando o feedback é lento? • Perda de confiança do time • Time deixa de rodar os testes
  15. 15. Importância do tempo de build/feedback • XP (Extreme Programming) ➡ 10-minute build
  16. 16. Importância do tempo de build/feedback • XP (Extreme Programming) ➡ 10-minute build • James Shore (The Art of Agile Development) ➡ 10 or 15-minute build
  17. 17. “That's about the right amount of time to stretch my legs, get some coffee, and talk over our work with my pairing partner.” - James Shore, The Art of Agile Development
  18. 18. Testes de Unidade • Rodam MUITO rápido = feedback mais rápido!
  19. 19. Testes de Unidade • Rodam MUITO rápido = feedback mais rápido! • Ótimos para testar valores limite ou combinações de desvios no código
  20. 20. Testes de Unidade • Boa quantidade e cobertura de testes = menor necessidade de testes exaustivos pela UI
  21. 21. Testes de Unidade • Boa quantidade e cobertura de testes = menor necessidade de testes exaustivos pela UI • Te oferecerem segurança para introduzir mudanças (safety net)
  22. 22. Cobertura de código: dicas • “High coverage numbers are too easy to reach with low quality testing” (Martin Fowler)
  23. 23. Cobertura de código: dicas • “High coverage numbers are too easy to reach with low quality testing” (Martin Fowler) • Cobertura alta != bons testes
  24. 24. Cobertura de código: dicas • “High coverage numbers are too easy to reach with low quality testing” (Martin Fowler) • Cobertura alta != bons testes • Você pode ter 100% de cobertura sem nenhum assert nos testes!
  25. 25. Ferramentas
  26. 26. Testes no nível de Serviço • Preencher o gap entre Unidade e UI
  27. 27. Testes no nível de Serviço • Preencher o gap entre Unidade e UI • Testar regras de negócio “abaixo” da UI, sem depender da interface (Web, Mobile, Desktop)
  28. 28. Testes no nível de Serviço • Preencher o gap entre Unidade e UI • Testar regras de negócio “abaixo” da UI, sem depender da interface (Web, Mobile, Desktop) • Subcutaneous Tests (Martin Fowler)
  29. 29. Testes no nível de Serviço: Tipos • Testes de Componente / Integração
  30. 30. Testes no nível de Serviço: Tipos • Testes de Componente / Integração • Testes de WebServices / APIs
  31. 31. Testes no nível de Serviço: Tipos • Testes de Componente / Integração • Testes de WebServices / APIs • Testes de Contrato
  32. 32. Ferramentas
  33. 33. Testes pela UI • Mais lentos/frágeis, feedback lento
  34. 34. Testes pela UI • Mais lentos/frágeis, feedback lento • Ponto de vista do usuário final
  35. 35. Testes pela UI • Mais lentos/frágeis, feedback lento • Ponto de vista do usuário final • Focar nos cenários mais importantes
  36. 36. Testes pela UI: Tipos • Cross Browser Testing
  37. 37. • Cross Browser Testing • Headless Testing Testes pela UI: Tipos
  38. 38. • Cross Browser Testing • Headless Testing • Visual Regression Testing Testes pela UI: Tipos
  39. 39. Visual Regression Testing: como é?
  40. 40. Ferramentas: xBrowser/ Headless Testing
  41. 41. Ferramentas: Mobile UI Testing
  42. 42. Ferramentas: Visual Regression Testing
  43. 43. Hands-on
  44. 44. • Projeto de exemplo: https:// github.com/stefanteixeira/ primeiros-passos-automacao- testes • JUnit + REST-Assured + Selenium Webdriver Hands-on
  45. 45. Livros Recomendados
  46. 46. Obrigado! Stefan Teixeira @stefan_teixeira stefanfk@gmail.com stefanteixeira.com.br stefanteixeira.com

×