Après des années à lutter contre des tests API instables dans les pipelines CI/CD, j'ai enfin trouvé la solution. Voici comment j'ai construit un framework qui a réduit notre taux de tests instables de 10 % à moins de 1 %.
Le Problème
Quand j'ai rejoint l'équipe, notre suite de tests API était un cauchemar :
- 10 % de taux de tests instables - Les tests échouaient aléatoirement dans le CI
- Problèmes réseau provoquant des faux positifs
- Limitation de débit (erreurs 429) qui tuait des séries entières de tests
- Aucune validation de schéma - Les changements d'API cassaient en silence
- 45 minutes d'exécution - Bloquait les déploiements
- Fuites de secrets dans les logs CI (cauchemar de sécurité)
La Solution : Architecture en Couches
J'ai conçu une architecture à trois couches qui séparait les préoccupations et rendait les tests maintenables :
\
