Reactis Coverage Metrics

Measure and achieve comprehensive coverage for Simulink models, Stateflow charts, C code, and Embedded MATLAB code. Reactis supports industry-standard metrics like MC/DC and MCC, plus model-specific measures, to ensure thorough testing and compliance evidence.

What is Code and Model Coverage?

Coverage metrics quantify how thoroughly your tests exercise the logic in your code or model. Higher coverage indicates more comprehensive testing, reducing the risk of undetected bugs. Reactis measures coverage during test execution and guides test generation to achieve specific coverage goals.

Coverage is essential for safety-critical development (e.g., ISO 26262, DO-178C) where demonstrating adequate testing is required for certification.

Coverage Metrics Supported by Reactis

Reactis provides a comprehensive set of coverage metrics for Simulink/Stateflow models, C code and Embedded MATLAB:

Statement Coverage

Measures the percentage of executable statements executed by tests. Ensures every line of code is run at least once.

Decision Coverage

Covers all decision points (e.g., if/else, loops) by ensuring both true and false outcomes are tested.

Condition Coverage

Tests each condition in a decision independently, covering all possible boolean values for each sub-expression.

MC/DC Coverage

Modified Condition/Decision Coverage — a rigorous metric requiring each condition to independently affect the decision outcome. Critical for avionics and automotive safety standards.

MCC Coverage

Multiple Condition Coverage — tests all combinations of conditions in a decision. Provides even higher assurance than MC/DC.

Branch Coverage

Ensures every branch (true/false path) in control flow is executed. Similar to decision coverage but focuses on branches.

Subsystem Coverage

Measures the percentage of Simulink conditional subsystems called during testing. Ensures all subsystems execute.

Boundary Value Coverage

Ensures tests cover boundary conditions for inputs, such as min/max values and just inside/outside limits.

Interval Coverage

Ensures outputs or other signals assume values in user-specified intervals. For outputs the special interval not equal to start value ensures each output changes its value during tests.

Stateflow-Specific Metrics

For Stateflow: state coverage, transition action coverage, condition action coverage, CSEPT coverage.

Function Coverage

Measures the percentage of functions called during testing. Ensures all functions are exercised.

Function Call Coverage

Ensures all function calls are exercised.

User Defined Targets

Extend built-in metrics with custom test objectives tailored to your specific requirements. For example, ensure a safety-critical signal reaches a threshold or verify a sequence of state transitions.

How Reactis Measures Coverage

Reactis instruments your code or model to track coverage during test execution:

1. Instrument

Reactis adds coverage tracking to your model or code without modifying the original files.

2. Execute Tests

Run tests (generated or manual) and Reactis records which statements, decisions, etc., are covered.

3. Analyze & Report

View coverage reports highlighting uncovered areas. Reactis can generate targeted tests to improve coverage.

4. Achieve Goals

Use coverage-driven test generation to systematically reach 100% on desired metrics.

Coverage in Reactis for Simulink vs. Reactis for C

Both tools support the core metrics, but with product-specific features:

Reactis for Simulink

Model-based coverage

  • All standard metrics (Statement, Decision, Condition, MC/DC, MCC) tracked in Simulink, Stateflow, Embedded MATLAB (with Reactis for EML Plugin), and C code in C Caller blocks or S-Functions (with Reactis for C Plugin).
  • Simulink-specific: subsystem, branch, boundary, interval
  • Stateflow-specific: state, transition action, condition action, CSEPT
  • Guided simulation to target uncovered model elements
  • Visual coverage highlighting in the model diagram
  • Detailed HTML coverage reports for safety/QA artifacts

Reactis for C

Coverage for standalone C code

  • All standard metrics (Statement, Decision, Condition, MC/DC, MCC)
  • Function and Function Call coverage
  • Guided simulation to target uncovered code elements
  • Coverage highlighting with annotation and coloring of code
  • Detailed HTML coverage reports for compliance artifacts and QA

Benefits of Coverage Metrics

Improved Quality

Higher coverage correlates with fewer bugs. Uncovered code is a risk area.

Standards Compliance

MC/DC and MCC are required for DO-178C Level A and ISO 26262 ASIL D.

Efficient Testing

Focus tests on uncovered logic, reducing redundant test cases.

Regression Assurance

Monitor coverage in CI/CD to prevent coverage loss during changes.

Auditable Evidence

Generate reports proving coverage for safety cases and certifications.

Guided Development

Use coverage feedback to improve test suites and code design.

Achieve comprehensive coverage with Reactis. Request a demo or download a trial to see coverage metrics in action.

Schedule Demo →   Download Trial →

Learn more: Reactis for Simulink Metrics   |   Reactis for C Metrics