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ências
Mauricio 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-strategy
Métodos ágeis: o que é folclore e o que é real? - http://www.infoq.
com/br/presentations/agile-realidade-folclore
Test Driven Development: By Example - http://bookqueue.net/books/4882-
test-driven-development-by-example
Growing Object-Oriented Software, Guided by Tests - http://bookqueue.
net/books/4883-growing-object-oriented-software-guided-by-tests
Test-Driven Development: Teste e Design no Mundo Real - http:
//bookqueue.net/books/4886-test-driven-development-teste-e-design-no-
mundo-real
Obrigado!
squall.bruno@gmail.com
github.com/brunohenrique
@GaruHenr

TDD, introdução sem mágica!