Upgrade to Pro — share decks privately, control downloads, hide ads and more …

TDC 2014 Florianópolis - Melhorando sua Estraté...

TDC 2014 Florianópolis - Melhorando sua Estratégia de Testes Automatizados

Palestra apresentada na trilha de Testes do TDC 2014 Florianópolis, no dia 15/05.

Stefan Teixeira

May 15, 2014
Tweet

More Decks by Stefan Teixeira

Other Decks in Programming

Transcript

  1. 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: [email protected] Blog: stefanteixeira.com.br Facebook: facebook.com/stefan.teixeira LinkedIn: linkedin.com/in/stefanteixeira Untappd: untappd.com/user/stefanteixeira
  2. Globalcode – Open4education Ferramentas record-playback Problemas! Alto custo de manutenção

    Testes lentos -> aumento do tempo de build e de feedback Falsos negativos
  3. Globalcode – Open4education Ferramentas record-playback E com o tempo de

    feedback lento... Perda de confiança do time Time deixa de rodar os testes
  4. 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.”
  5. 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
  6. 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
  7. 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?
  8. 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)
  9. 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
  10. 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
  11. Globalcode – Open4education Headless Browsers Frameworks e Runners Selenium WebDriver

    GhostDriver HtmlUnitDriver Capybara Poltergeist Celerity