tdd, introdução sem mágica!
TRANSCRIPT
TDD, introdução sem mágica!
Bruno Henrique - Garu
Test Drive Development
O que é TDD?
TDD é sobre testes de software?
Não
TDD te faz pensar no que você não está preparado
para pensar nesse momento.
Permite pivotar de forma mais fácil e barata.
TDD melhora minha arquitetura?
Não
TDD melhora minha OO?
Não
O TDD irá te apontar falhas, mas você terá que
mudar isso "sozinho".
O TDD te faz usar baby steps.
Não, ele não faz isso.
TDD é sobre ser capaz de fazer baby steps
Tenho que testar tudo?
Não
Como assim?
"Tudo" é muito relativo, você tem que testar o que
é importante para seu negócio.
...se conseguir ter 100% de cobertura, será muito
bom.
Testar antes ou depois?
Se você está praticando TDD, a resposta é...?
Antes
Por quê?
Tenho que refatorar?
No ciclo do TDD sim, você tem.
O código de teste também tem que ser
refatorado
...ele faz parte do legado do software
"Mas escrever código de teste é improdutivo."
Capataz
Existe uma curva de aprendizagem
inicialmente, mas que logo depois volta ao
normal.
ReferênciasMauricio Aniche - ( blog | slideshare)Referências do Aniche sobre TDD - http://www.aniche.com.br/2010/04/referencias-sobre-tdd/Tornando TDD Simples: Problemas e Soluções para Implementadores - http://www.infoq.com/br/articles/levison-TDD-adoption-strategyMétodos ágeis: o que é folclore e o que é real? - http://www.infoq.com/br/presentations/agile-realidade-folcloreTest Driven Development: By Example - http://bookqueue.net/books/4882-test-driven-development-by-exampleGrowing Object-Oriented Software, Guided by Tests - http://bookqueue.net/books/4883-growing-object-oriented-software-guided-by-testsTest-Driven Development: Teste e Design no Mundo Real - http://bookqueue.net/books/4886-test-driven-development-teste-e-design-no-mundo-real
[email protected]/brunohenrique@GaruHenr