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