Romulo Santos
TDD PARA SERES HUMANOS
Uma conversa simples sobre os benefícios do desenvolvimento
orientado a testes, que está vivo, evoluindo e passa muito bem.
Quem sou eu?
2
Troublemaker lv. 21
Romulo Santos
POR QUE TESTAMOS?
Essa é fácil hein!
3
PRA SABER SE NÃO
ESTAMOS ERRADOS
Eu disse que era fácil! Tome ai um bat-joinha.
4
AUTOMATIZADOS
OU MANUAIS?
Que tipo de teste é melhor?
5
AUTOMATIZADOS
Testes automatizados são mais legais que dinossauros robôs!
6
ANTES OU DEPOIS?
Qual é a melhor hora pra testar?
7
NENHUM DOS DOIS!
Yeah Yeah!
8
CICLO MALDITO DA FRUSTRAÇÃO GARANTIDA
9
Erros
Stress
Testes
CICLO LINDO DA RECOMPENSA IMEDIATA
10
Erros
Stress
Testes
POR QUE NÃO
TESTAR DEPOIS?
Porque não?
11
DISCIPLINA12
TDD NÃO É SOBRE
TESTES
(VERIFICAÇÃO)
Ah não!
13
TDD É SOBRE DESIGN
Design não é uma fase, mas um processo contínuo!
14
TDD NÃO É REVOLUÇÃO, TDD É EVOLUÇÃO
O objetivo é código limpo e que funciona
Tudo o que você sabia sobre um bom design ainda vale.
15
DESIGN UP-FRONT (TRADICIONAL)
16
16
Design
16
Implementação Teste
DESIGN UP-FRONT (TESTE PRIMEIRO)
17
17
Design
17
ImplementaçãoTeste
TEST DRIVEN DEVELOPMENT / TEST DRIVEN DESIGN
18
18
Design
18
Implementação
Teste
Teste
COMO FAZER
•1 Adicione um teste
•2 Rode todos os testes
•3 Faça uma pequena mudança
•4 Rode todos os testes (todos devem passar)
•5 Refatore
19
VERMELHO VERDE REFATORE
20
TÉCNICAS PARA UM
BOM TDD
TDD Ninja!
21
LISTA DE TESTES
Uma coisa de cada vez
22
ISOLAMENTO
Cada coisa separada
23
DE CIMA PRA BAIXO
OU DE BAIXO PRA
CIMA
Direções opostas rumo ao mesmo destino
24
TESTES DEVEM
ENSINAR
Ter um significado
25
COMO FAZER O TESTE
•Onde começar? 

Teste mais simples

•Como Começar? 

Assertion mais óbvia

•E depois? 

Testes e assertions que respondem a perguntas

Que te ajudam a entender outros testes

Que você sabe que dará conta
26
O teste é uma ferramenta para um design melhor
TESTE É A MELHOR
DOCUMENTAÇÃO
Código limpo e que funciona!
27
OUTRAS VANTAGENS
Como se precisasse!
28
VOCE SABE QUANDO
TERMINOU
Só falta testar…
29
VOCÊ APRENDE O
MÁXIMO COM O
CÓDIGO
Ao invés de ficar sempre com a primeira idéia que aparece.
30
AGREGA QUALIDADE
Usuários mais felizes
31
INSPIRA CONFIANÇA
32
O FIM DO MEDO
33
Perguntas e sugestões
rsantos@thoughtworks.com
OBRIGADO!

Test Driven Development (TDD) para seres humanos.