Quando NÃO Automatizar
Automação não é sempre a resposta. Saber quando NÃO automatizar é tão importante quanto saber automatizar.
❌ Não Automatize Se...
1. A Feature Vai Mudar Muito
Se a UI muda toda semana, seus testes vão quebrar toda semana.
Custo: Alto
Benefício: Baixo
2. É Mais Rápido Testar Manualmente
Tempo para automatizar: 4 horas
Tempo para testar manual: 5 minutos
Frequência: 1x por mês
ROI: Negativo
3. Requer Julgamento Humano
- Design visual
- UX/Usabilidade
- Acessibilidade
- Experiência do usuário
- A cada commit
- A cada deploy
- Várias vezes por dia
- Login
- Pagamento
- Cadastro
- Múltiplas combinações
- Muitos cenários
- Validações complexas
4. Ambiente Instável
Se o ambiente de teste cai toda hora, seus testes vão falhar por motivos errados (flaky tests).
✅ Automatize Quando...
1. Alta Frequência
Testes que rodam:
2. Regressão Crítica
Funcionalidades que não podem quebrar:
3. Dados Complexos
Testes que precisam de:
Regra de Ouro
Custo de Automação < Custo de Teste Manual (ao longo do tempo)
Se não fizer sentido economicamente, não automatize.
Exemplo Prático
Cenário: Validar cores de um botão
Automação:
// Difícil, frágil, não detecta problemas visuais reais
expect(button.getComputedStyle('color')).toBe('#3b82f6');
Manual:
Decisão: Teste manual + screenshot test ocasional