Founded in 1957, Magna is a leading global manufacturer in automotive parts, providing innovative products and services to nearly every automaker worldwide. As an industry leader, Magna has significantly advanced vehicle safety and technology through systems such as advanced driver assistance, blind-spot detection, and lane departure warnings.
One of the most innovative areas in the automotive industry today is autonomous driving systems, and Magna is at the forefront of this technology. To ensure the reliability of these systems, it is crucial that vehicles’ vision cameras are thoroughly tested.
Managing and testing the software behind vision cameras is not an industry standard due to the difficulties of testing hardware dependent code. Regardless, a test-driven approach can avoid critical errors, reduce the time required to diagnose errors, and increase code quality.
Our Test-Driven Development for Embedded Software platform introduces test-driven development to Magna’s existing surround view camera system and creates an automated testing process for a continuous integration and development pipeline.
Whenever a Magna employee publishes code to their GitHub repository, our platform runs a series of tests on the published code. Our tests fully probe the code base for any new errors that may have been introduced. This ensures the updates do not negatively impact other parts of the system.
Users are also able to analyze the percentage of the code tested to ensure that the platform has full coverage of the code base.
The test cases are written in the C++ language, using the CppUTest framework. The code is tested automatically whenever a push is made to GitHub, using the workflow automation platform GitHub Actions. Our workflow also uses LCOV and Python scripts to collect and display test metrics.