Decisões
ORG-0009 — Desenvolvimento orientado a testes (TDD)
- Status: aceita
- Data: 2026-10-18
- Decide: toda tarefa de código começa por um teste que falha pelo motivo certo
Contexto
Teste escrito depois do código tende a confirmar o que o código já faz. Escrito antes, ele descreve o que se quer, e a falha prova que o teste olha para o lugar certo.
Decisão
- Toda tarefa de código começa por um teste que falha pelo motivo certo, seja qual for a camada dele (unidade, integração ou E2E); depois vem o código mínimo para passar; depois a refatoração.
- O
tasks.mdde toda change lista a tarefa de teste antes da tarefa de código, cada uma começando pelo tipo;eng/tdd-order.shconfere a ordem na CI. - Cada cenário de spec tem cobertura declarada no
tasks.md: unidade, integração ou caso E2E. - Vale também no E2E: o caso de um cenário novo é escrito antes da tela e falha até ela existir.
Alternativas consideradas
| Alternativa | Por que não |
|---|---|
| "Teste para cada caso de uso", sem ordem | Por que não: o teste vem depois e confirma o que saiu |
| Cobertura mínima por porcentagem | Por que não: mede linhas, não cenários |
Consequências
- A quebra de um caso por uma mudança aparece durante a change, não dias depois.
- O revisor confere a ordem das tarefas e a cobertura de cada cenário.
Mais
O detalhe está na documentação da arquitetura.