Test Driven development
Software com mais qualidade, menos bugs e melhor manutenabilidade
O que veremos...
- Conceito
- Ciclo de desenvolvimento
- Boas práticas para unittestS
- Dojo
- REALMENTE EXISTEM Benefícios ?
Test DRIVEN DEVELOPMNT
Ciclo de desenvolvimento
bOAS PráticaS PARA UNITTESTS
Tests F.I.R.S.T !
- Fast
- Independent
- Repeatable
- Self-Validating
- Timely
"Não deixe para amanhã o que você nunca vai fazer" :P
Mão na massa...
Exercício:
Implementar uma classe que represente uma pilha(LIFO) que só possa conter números inteiros e pares.
Suportando as seguintes operações:
push(value)
- adiciona um valor no topo da pilhapop()
- remove o primeiro elemento da pilha e retornar o valor do mesmo.count()
- retorna o total de elementos da pilha
BENEFÍCIOS
...Mas desenvolvimento guiado por testes traz algum benefício?
No final das contas vale a pena?
Manutenção crítica em SOFTWARE sem unitests...
BENEFÍCIOS
- Testes são uma forma de documentar;
- Foco nos requerimentos e regras de negócio;
- Encoraja soluções simples;
- Ajuda a eliminar bugs previamente.
dESENVOLVIMENTO GUIADO POR TESTES
"Se a densidade de defeitos pode ser suficientemente reduzida, então a garantia de qualidade pode mudar de trabalho reativo para trabalho pró-ativo..."
Kent Beck.
TDD
By Raphael Carvalho
TDD
- 1,845