Cantata code coverage capabilities can be used integrated with Cantata tests, or with any external test driver.
It provides an objective measurement of test execution completeness, to supplement requirements based and robustness tests.
Code Coverage is a dynamic analysis technique to measure which parts of the code have been executed by tests. The logic structure within the code can be identified by individual constructs (syntax elements). The measurement of these individual constructs is recorded using structural code coverage metrics.
Code coverage analysis is used to identify testing gaps where code is not exercised by requirements driven and robustness driven testing approaches.
Coverage analysis is required for compliance with all international software safety standards, with higher safety levels requiring achievement of more rigorous coverage metrics.
Johnny Johansson, Global Validation & Verification Tools Manager, SAAB
Rolf Keller, Software Engineer, Hamilton Medical
Egbert Voigt, engineer on European Train Control System, Thales Rail
Code coverage is measured using the following metrics, with standard specific Rule Sets for integrated checking of required code coverage levels.
Cantata diagnostics present coverage from complete project code-trees, drilling down to individual code constructs within each line of code helping you to pin-point gaps and direct test effort efficiently.
Automatic test case coverage optimisation aids test case vector selection from large data sets, and reduces regression testing overhead.
Build Variant Coverage understands source code executed over more than one build variant. Cantata uses pre-compiled defines (#defines) to separately identify the different build variants. Cantata Coverage Viewer displays aggregated data for multiple build variants, of the same source code.
In addition to the powerful diagnostics of code coverage results within the Eclipse® GUI, Cantata generates flexible user configurable reports in XML, HTML and safety standards certification ready ASCII text reports.
Build Variant Coverage reports aggregate coverage data across all defines, which is suitable as certification evidence for all build variants of the source code.
Reports and certification evidence embed the integrated checks on the achievement of the required coverage metric targets.
Cantata Coverage uses instrumentation (via the GUI or CLI) on a copy of the source code, and coverage data is recorded for both graphical diagnosis and certification ready evidence.
Coverage analysis can be used integrated with Cantata tests or used to measure execution from other tests, and data from multiple tests can be easily combined.
Analysis is made simpler by customisable coverage Rule Sets, which automate all the code instrumentation, data reporting and required coverage checking, for all the main software safety standards.