CODE COVERAGE
WITH ADATEST 95

Objective measurement of
how much code has been
executed by your tests

Slider

AdaTEST 95 code coverage capabilities can be used integrated with AdaTEST 95 tests, or with any external test driver.

It provides an objective measurement of test execution completeness, to supplement requirements based and robustness tests.

AdaTEST 95 code coverage makes it easy to:

Screenshot of AdaTEST Code Coverage Video Cover

AdaTEST 95 code coverage video

What is code coverage?

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.

"Coverage showed us two things: firstly that about 8% of our code was not being reached by the original validation suite. AdaTEST 95 also showed us that certain areas of our code were not even reachable!”

Jose Ruiz, Senior Software Engineer, AdaCore

“Measurement and use of test coverage gave us, for the first time, an objective go/no-go criterion for the acceptance of a unit of code.”

Ian Loughrey, Senior Engineer, BAE Systems

What does AdaTEST 95 Code Coverage help me do?

MEASURE COVERAGE

Code coverage is measured using the following metrics, with standard specific Rule Sets for integrated checking of required code coverage levels.

  • Function Entry Points
  • Function Call-Returns
  • Basic Blocks
  • Statements
  • Decisions (branches)
  • Loops
  • Relational Operators
  • Boolean Operators
  • Conditions
  • MC/DC (Unique-cause and Masking variants)

DIAGNOSE COVERAGE RESULTS

AdaTEST 95 diagnostics present code coverage data in an HTML Results Viewer featuring:

  • Coloured code listing
  • Next/previous failure navigation
  • Detailed metric execution data
AdaTEST 95 code coverage checks integrated with tests, make enforcement of the required coverage easy and automatic for regression test runs. Coverage checks include:
  • Achievement of percentage of each structural coverage metric
  • Assertions that data values (of specified variable values) have been used as ‘always true’ or ‘true at least once’
  • The exact execution path through code.

VIEW COVERAGE TRENDS

The AdaTEST 95 HTML Results Overview presents a history of test results and coverage checks against pass criteria, to coverage results trends.

Each test / coverage result drills down into the hyperlinked detailed HTML Results View for the relevant test run.

GENERATE REPORTS

In addition to the powerful diagnostics of code coverage results in the HTML Results Viewer and Overview, AdaTEST 95 generates safety standards certification ready ASCII text reports of compliance with coverage requirements.

Reports and certification evidence embed the integrated checks on the achievement of the required coverage metric targets.

How does AdaTEST 95 Code Coverage Work

AdaTEST 95 uses instrumentation on a copy of the source code, and coverage data is recorded for both HTML graphical diagnosis and certification ready ASCII text file evidence.

Coverage analysis can be used integrated with AdaTEST 95 tests or used to measure execution from other tests, and data from multiple tests can be easily combined.

Analysis is made simpler by coverage Rule Sets, which automate all the code instrumentation, data reporting and required coverage checking, for all the main software safety standards.