–Wikipédia
“O teste do software é a investigação do software a fim
de fornecer informações sobre sua qualidade em
relação ao contexto em que ele deve operar. Isso inclui
o processo de utilizar o produto para encontrar seus
defeitos.”
Slide 7
Slide 7 text
O QUE É TDD?
Desenvolvimento Orientado a Teste
Slide 8
Slide 8 text
– Wikipédia
“Processo de desenvolvimento de software aonde se
escreve o teste primeiro”
Slide 9
Slide 9 text
TESTE PRIMEIRO?
show me the code!
Slide 10
Slide 10 text
MUNDO REAL
Slide 11
Slide 11 text
HISTORINHA
Slide 12
Slide 12 text
ERA UMA VEZ UM PROJETO
Slide 13
Slide 13 text
LINDO MARAVILHO
Slide 14
Slide 14 text
O TEMPO
Slide 15
Slide 15 text
O PROJETO SE TRANSFORMA
Slide 16
Slide 16 text
CÓDIGO LEGADO
Slide 17
Slide 17 text
LENTO
Slide 18
Slide 18 text
CLIENTES IRRITADOS
Slide 19
Slide 19 text
DIFÍCIL MANUTENÇÃO
Slide 20
Slide 20 text
Alteração
Slide 21
Slide 21 text
Alteração
Teste Manual
Slide 22
Slide 22 text
Alteração
Teste Manual
Slide 23
Slide 23 text
Alteração
Teste Manual
Produção
Slide 24
Slide 24 text
Alteração
Teste Manual
Produção
Slide 25
Slide 25 text
Alteração
Teste Manual
Produção
Slide 26
Slide 26 text
CÓDIGO LEGADO SEM TESTE
Slide 27
Slide 27 text
–Kent Beck
“The more stress you
feel, the less testing you
will do”
Slide 28
Slide 28 text
–Kent Beck
“The less testing you do,
the more errors you will
make”
Slide 29
Slide 29 text
NÃO POSSO MUDAR O PASSADO
Slide 30
Slide 30 text
PRECISO ESCREVER TESTES
Slide 31
Slide 31 text
EU AMO SOFTWARE
Slide 32
Slide 32 text
VAMOS VOLTAR UM POUCO
Slide 33
Slide 33 text
HISTÓRIA DO TDD
Slide 34
Slide 34 text
12000 BC - FOGO
Slide 35
Slide 35 text
18XX - PRIMEIRO PROGRAMA
Ada Lovelace <3
Slide 36
Slide 36 text
18XX - PRIMEIRO BUG
Preciso de testes….
Slide 37
Slide 37 text
1957 - CITAÇÃO DE TESTES
“The first attack on the checkout problem may be made before coding is begun” - Michael Bolton
Slide 38
Slide 38 text
1959/63 - NASA PROJECT MERCURY
Slide 39
Slide 39 text
1989 - JERRY WEINBERG
Cartões perfurados!!!
Slide 40
Slide 40 text
1994 - KENT BECK
SUnit, primeiro framework para testes, em Smaltalk
Slide 41
Slide 41 text
1995 - MOVIMENTO XP
Kent Beck outra vez
Slide 42
Slide 42 text
EXTREME PROGRAMMING
Feedback rápido
Presumir simplicidade
Mudanças incrementais
Abraçar mudanças
Trabalho de alta qualidade.
Slide 43
Slide 43 text
COMO TDD?
Slide 44
Slide 44 text
BABY STEPS
Slide 45
Slide 45 text
RED, GREEN, REFACTOR
Slide 46
Slide 46 text
RED
GREEN
REFACTOR
Slide 47
Slide 47 text
RED
GREEN
REFACTOR
Slide 48
Slide 48 text
RED
GREEN
REFACTOR
Slide 49
Slide 49 text
RED
GREEN
REFACTOR
Slide 50
Slide 50 text
COBERTURA
Slide 51
Slide 51 text
DIMINUIR DEPENDÊNCIA
Slide 52
Slide 52 text
MODULAR
Slide 53
Slide 53 text
O QUE É TEST ANTES?
Slide 54
Slide 54 text
PREVENÇÃO DE BUGS
Slide 55
Slide 55 text
–Robert C. Martin
“Testing is about trust.”
Slide 56
Slide 56 text
CONFIANÇA
Slide 57
Slide 57 text
DOCUMENTAÇÃO
Slide 58
Slide 58 text
BOM DESIGN
Código legível
Pequeno
Simples
Slide 59
Slide 59 text
QUALIDADE
Slide 60
Slide 60 text
CLIENTE FELIZ
Slide 61
Slide 61 text
SONO
Slide 62
Slide 62 text
E AONDE NÃO APLICA?
Slide 63
Slide 63 text
SISTEMAS MUITOS
DISTRIBUIDOS
Dependência entre serviços
Slide 64
Slide 64 text
AMBIENTE NÃO
REPRODUZÍVEL
Satélite
Embedded
Kernel Space
Alguns drivers
Slide 65
Slide 65 text
PROTÓTIPOS
Não faz sentido
Slide 66
Slide 66 text
HISTORINHA?
Slide 67
Slide 67 text
TDD
Slide 68
Slide 68 text
SONO
Slide 69
Slide 69 text
NÃO
Slide 70
Slide 70 text
NO SILVER BULLET
Slide 71
Slide 71 text
OBRIGADO
Slide 72
Slide 72 text
LIVROS
Slide 73
Slide 73 text
TEST DRIVEN
DEVELOPMENT:
BY EXAMPLE
Slide 74
Slide 74 text
GROWING
OBJECT-
ORIENTED
SOFTWARE,
GUIDED BY
TESTS
Slide 75
Slide 75 text
TEST DRIVEN
DEVELOPMENT
FOR
EMBEDDED C
Slide 76
Slide 76 text
TEST-DRIVEN
DEVELOPMENT
A PRACTICAL
GUIDE
Slide 77
Slide 77 text
TEST DRIVEN
DEVELOPMENT:
TESTE E DESIGN
NO MUNDO
REAL COM
RUBY