Please enable JavaScript.
Coggle requires JavaScript to display documents.
🧪 TDD (Test-Driven Development) - Coggle Diagram
🧪 TDD (Test-Driven Development)
🔍 Definição
Prática que coloca ênfase na criação de testes
antes de começar a escrever código.
✅Pontos positivos
Alta cobertura de código
Reduz a funcionalidade ao essencial (YAGNI)
Menor quantidade de código para que o
teste seja bem-sucedido (KISS)
Código é limpo e legível (DRY)
🔄 Ciclo Fundamental
GREEN (consiste no desenvolvimento do código para corrigir o erro do teste)
Link - exemplo GREEN
REFACTOR (consiste na simplificaçao do código com o objetivo de eliminar a redundância)
Link - exemplo REFACTOR
RED (consiste na escrita de um teste que falhe)
Link - exemplo RED
❌ Pontos Negativos
Custo adicional de tempo para a realização dos testes
Possibilidade de retrabalho de testes para features modificadas
⚖ Leis do TDD Segundo Robert C. Martin
Segunda Lei: Você não deve escrever mais de um teste unitário o suficiente para causar uma falha.
Terceira Lei: Você não deve escrever mais trechos de código do que o necessário para executar o teste ou verificar.
Primeira lei: você não deve escrever código de produção antes de criar um teste que falhe.
➕ Práticas recomendadas ao aplicar TDD
Execute testes com frequência
Etapas pequenas e incrementais
Refatorar com confiança
Comentários significativos
Concentre-se em casos de teste relevantes
Mantenha um equilíbrio
Escreva testes claros e significativos
Testes independentes