Contexte
J'ai été intégré à une équipe développant un système de surveillance acoustique militaire. La base de code C++ était volumineuse, évoluait rapidement et sujette à des régressions coûteuses à diagnostiquer.
Le Challenge
Les cycles de tests manuels prenaient plusieurs heures par passage. Les ingénieurs devaient suivre des scripts de test complexes à la main, ce qui introduisait des erreurs humaines et rendait impossible une exécution suffisamment fréquente pour détecter les régressions tôt dans le cycle de développement.
La Solution
J'ai conçu et développé un framework d'automatisation de tests en Python from scratch qui :
- S'interface directement avec le produit via ses protocoles de communication, sans modification du produit lui-même
- Propose un langage de scénarios utilisable par les ingénieurs systèmes (non-développeurs) pour écrire des campagnes de tests sans connaissances en programmation
- S'exécute sans supervision — une campagne de tests complète se termine en quelques minutes au lieu de plusieurs heures
- Produit des rapports structurés pour une traçabilité et une auditabilité complète
Impact
- Temps de test moyen divisé environs par 30
- Les ingénieurs systèmes sont devenus autonomes dans l'écriture et l'exécution des scénarios de tests
- Reproductibilité et traçabilité totales sur chaque passage de test
Stack Technique
Python, VS Code