3.4. Software Testing

3.4.1. Module Testing

All source code MUST be written in a unit-testable way. All source code MUST be unit tested in the CI pipeline for every commit. Low-level code that cannot be tested may be omitted, but this has to be justified in the documentation.

The coverage report MUST result in a line and branch coverage of 100%.

For details see Section 5.

3.4.2. Integration Testing

The linked program MUST be run in a HIL test.

The coverage report of the HIL test MUST result in a line and branch coverage of 100%. For some parts of the software, this requires additional manual testing to complement the automated tests that are run within the CI pipeline.