Context
I joined a team developing a military acoustic monitoring system. The C++ code base was large, rapidly evolving and prone to regressions that were costly to diagnose.
The Challenge
Manual test cycles took several hours per run. Engineers had to follow complex test scripts by hand, introducing human error and making it impossible to run them frequently enough to detect regressions early in the development cycle.
The Solution
I designed and developed a test automation framework in Python from scratch that :
- interfaces directly with the product via its communication protocols, without modifying the product itself
- provides a scenario language that systems engineers (non-developers) can use to write test campaigns without programming knowledge
- Runs unsupervised - a complete test campaign is completed in minutes instead of hours
- Produces structured reports for complete traceability and auditability
Impact
- Average test time divided by 30
- Systems engineers become autonomous in writing and executing test scenarios
- Total reproducibility and traceability of each test run
Technical stack
Python, VS Code