TDC 2014 Floripa - Melhorando sua Estratégia de Testes Automatizados

1.257 visualizações

Publicada em

Palestra ministrada na trilha de Testes do TDC 2014 Florianópolis, no dia 15 de Maio.

Publicada em: Tecnologia
1 comentário
10 gostaram
Estatísticas
Notas
Sem downloads
Visualizações
Visualizações totais
1.257
No SlideShare
0
A partir de incorporações
0
Número de incorporações
15
Ações
Compartilhamentos
0
Downloads
37
Comentários
1
Gostaram
10
Incorporações 0
Nenhuma incorporação

Nenhuma nota no slide

TDC 2014 Floripa - Melhorando sua Estratégia de Testes Automatizados

  1. 1. Globalcode – Open4education Melhorando sua Estratégia de Testes Automatizados Stefan Teixeira stefanfk@gmail.com / stefanteixeira.com.br
  2. 2. Globalcode – Open4education Sobre o palestrante Stefan Teixeira QA Engineer @ Orga Systems Bacharel em Ciência da Computação pela UFRJ Cursando MBA em Garantia de Qualidade de Software na Escola Politécnica da UFRJ Certificado CTAL-TA / CTAL-TM pelo ISTQB e CPRE-FL pelo IREB Contatos: E-mail: stefanfk@gmail.com Blog: stefanteixeira.com.br Facebook: facebook.com/stefan.teixeira LinkedIn: linkedin.com/in/stefanteixeira Untappd: untappd.com/user/stefanteixeira
  3. 3. Globalcode – Open4education Testes Automatizados
  4. 4. Globalcode – Open4education Testes pela UI?
  5. 5. Globalcode – Open4education Testes de unidade?
  6. 6. Globalcode – Open4education Como as empresas começam a automatizar testes?
  7. 7. Globalcode – Open4education Ferramentas record-playback
  8. 8. Globalcode – Open4education Ferramentas record-playback Fácil criar testes novos Não requerem skills de programação
  9. 9. Globalcode – Open4education Mas seria uma pena se a gente...
  10. 10. Globalcode – Open4education Ferramentas record-playback ...incluísse um campo novo? ...alterasse o id de um campo?
  11. 11. Globalcode – Open4education E a médio/longo prazo...
  12. 12. Globalcode – Open4education Ferramentas record-playback Problemas! Alto custo de manutenção Testes lentos -> aumento do tempo de build e de feedback Falsos negativos
  13. 13. Globalcode – Open4education Ferramentas record-playback E com o tempo de feedback lento... Perda de confiança do time Time deixa de rodar os testes
  14. 14. Globalcode – Open4education Falando sobre feedback...
  15. 15. Globalcode – Open4education Importância do tempo de build e feedback XP (Extreme Programming) 10-minute build James Shore (The Art of Agile Development) 10 or 15-minute build “That’s about the right amount of time to stretch my legs, get some coffee, and talk over our work with my pairing partner.”
  16. 16. Globalcode – Open4education Importância do tempo de build e feedback Dan Bodart Palestra – “Crazy Fast Build Times – Or when 10 seconds starts to make you nervous” Mostra formas de reduzir em até 10 vezes o tempo de build de uma aplicação
  17. 17. Globalcode – Open4education E os testes de unidade?
  18. 18. Globalcode – Open4education Testes de unidade Boa quantidade e cobertura de testes -> menor necessidade de testes exaustivos pela UI Rodam muito rápido -> feedback mais rápido Muito efetivos para testar valores limite ou combinações de desvios no código
  19. 19. Globalcode – Open4education Testes de unidade Por definição, testam componentes isolados Como testamos a integração entre eles? Criando um teste que navegue pela UI?
  20. 20. Globalcode – Open4education
  21. 21. Globalcode – Open4education Pirâmide de Automação de Testes
  22. 22. Globalcode – Open4education Pirâmide de Automação de Testes Mike Cohn (Succeeding with Agile)
  23. 23. Globalcode – Open4education Testes na camada de serviço Preencher o gap entre unidade e UI Testar regras de negócio “abaixo” da UI Também chamados de Subcutaneous Tests (Martin Fowler)
  24. 24. Globalcode – Open4education Testes na camada de serviço Testar a aplicação sem depender da interface (web, android, iOS...) Geralmente utilizados para testes com BDD Validar critérios de aceite das user stories
  25. 25. Globalcode – Open4education Arquillian arquillian.org
  26. 26. Globalcode – Open4education Testes na UI
  27. 27. Globalcode – Open4education Testes na UI Smoke Tests xBrowser Testing Visual Regression Testing
  28. 28. Globalcode – Open4education E quando automatizamos tudo pela UI?
  29. 29. Globalcode – Open4education
  30. 30. Globalcode – Open4education Como evitar os problemas de testes pela UI?
  31. 31. Globalcode – Open4education Page Objects
  32. 32. Globalcode – Open4education Tratar código de teste como código de produção! “What makes a clean test? Three things. Readability, readability, and readability.” - “Uncle Bob” Martin – Clean Code “Any fool can write code that a computer can understand. Good programmers write code that humans can understand.” - Martin Fowler – Refactoring: Improving the Design of Existing Code
  33. 33. Globalcode – Open4education Headless Browsers http://stefanteixeira.com.br/2014/05/11/headless-testing-com-ghostdriver/
  34. 34. Globalcode – Open4education Headless Browsers Frameworks e Runners Selenium WebDriver GhostDriver HtmlUnitDriver Capybara Poltergeist Celerity
  35. 35. Globalcode – Open4education BDD Linguagem Gherkin (Given-When-Then)
  36. 36. Globalcode – Open4education Paralelizar Testes
  37. 37. Globalcode – Open4education Visual Regression Tests
  38. 38. Globalcode – Open4education
  39. 39. Globalcode – Open4education
  40. 40. Globalcode – Open4education Usos Validar valores de CSS Comparar screenshots Validar design responsivo
  41. 41. Globalcode – Open4education Tools
  42. 42. Globalcode – Open4education Obrigado! Stefan Teixeira stefanfk@gmail.com stefanteixeira.com.br br.linkedin.com/in/stefanteixeira

×