🚀 7.1 Motivação: Por que Testar?
Rodrigo Haole, ao expandir o Green Dog Delivery, percebeu que cada vez que adicionava uma nova funcionalidade (como um novo cupom de desconto), algo antigo parava de funcionar (como o cálculo do frete). Esse fenômeno é conhecido como Regressão.
O Custo do Erro
Na Engenharia Premium, sabemos que quanto mais tarde um bug é descoberto, mais caro ele custa para ser corrigido.
| Momento da Falha | Custo relativo | Impacto |
|---|---|---|
| Desenvolvimento (Teste Unitário) | 1x | Irrelevante (corrigido na hora) |
| Integração (CI) | 10x | Atraso pequeno no deploy |
| Produção (Usuário Final) | 100x+ | Perda de reputação e faturamento |
A Pirâmide de Testes
Para manter o Green Dog saudável, seguimos o padrão da Pirâmide de Testes:
- Base (Testes Unitários): Milhares de testes pequenos e rápidos. Validam métodos e lógicas isoladas.
- Meio (Testes de Integração): Validam a comunicação entre classes, repositórios e banco de dados.
- Topo (Testes E2E): Validam o fluxo completo do usuário (do clique no botão à persistência no banco).
TIP
Sono Tranquilo: O maior benefício dos testes automáticos não é apenas a qualidade do código, mas o “sono tranquilo” da equipe de engenharia. Saber que uma mudança não quebrou o sistema principal é o que permite a agilidade real.
No próximo capítulo, colocaremos a mão na massa com nossos primeiros Testes Unitários usando as ferramentas de elite do ecossistema Spring Boot 3.5.