Desenvolvimento orientado a
Testes
andrecarlucci@gmail.com
www.andrecarlucci.com
@andrecarlucci
André Carlucci
A força mais poderosa do
universo é o juros composto.
Albert Einstein
Red, Green, Refactor!
• Escreva um teste que falhe
• Escreva o código mais simples possível
que faça o teste passar
• Refatore
Action!
Um exemplo simples:
Por quê?
Documentação
Arquitetura
Usabilidade
Feedback
Confiança
O que testar?
E as chamadas externas?
Top Desculpas para não testar
• Tempo
• O cliente quer código, não testes
• Aplicação legada
• Temos testadores!
• Não sei testar
• Vamos iniciar daqui 2 meses
Como começar?
• Comece pequeno
• Faça novas tarefas com TDD
• A cada bug encontrado, faça primeiro um teste
que pegue o bug e depois mude o código.
• Pair programming!
Recomendações
• Crie um projeto de testes separado
• Utilize frameworks de testes
• Rode todos os testes sempre!
• Velocidade
• Testes de unidade x integração
• Pronto pronto!
• Servidor de integração contínua
Constatações
• Habilidade em testes
• Código já existente
• Código de testes não é código de produção
• Tenha bom senso
• Continue aprendendo sempre!
“TDD é sobre design, não
testes.”
Scott Bellware
Onde aprender mais?
• Livros
– TDD By Example – Kent Beck
– The Art of Unit Testing - Roy Osherove
– xUnit Test Patterns – Gerard Meszaros
• Internet
– http://www.CodeBetter.com
– http://www.extremeprogramming.org/
• Tools
– NUnit – www.NUnit.com
– TestDriven.Net – www.TestDriven.net
– Moq – code.google.com/p/moq
Perguntas?
andrecarlucci@gmail.com
@andrecarlucci
www.andrecarlucci.com

Desenvolvimento Orientado a Testes