Após anos lutando contra testes de API instáveis em pipelines de CI/CD, finalmente decifrei o código. Veja como construí um framework que reduziu nossa taxa de testes instáveis de 10% para menos de 1%.
O Problema
Quando entrei na equipe, nossa suíte de testes de API era um pesadelo:
- Taxa de 10% de testes instáveis - Testes falhavam aleatoriamente no CI
- Problemas de rede causavam falsos positivos
- Limitação de taxa (erros 429) matava execuções inteiras de testes
- Sem validação de schema - Mudanças na API quebravam silenciosamente
- Tempo de execução de 45 minutos - Bloqueava deploys
- Segredos vazavam nos logs do CI (pesadelo de segurança)
A Solução: Arquitetura em Camadas
Projetei uma arquitetura de três camadas que separava responsabilidades e tornava os testes sustentáveis:
\
