In which cases the coverage report (MCDC & Condition) of a block is influenced by the connection of the block's output with a scope?
4 views (last 30 days)
Show older comments
I have an AND block in a subsystem in Simulink and the coverage report shows that the input of the Port 2 was never false (for more details see fig1). The output of the AND block, the Input of Port 1 and the Input of Port 2 are shown respectively in fig 2. However, after connecting the Scope with the AND block (see fig1), the coverage result changed to 100% for this block.
I ran the simulation with fixed discrete step. The AND block is indeed in a subsystem but this subsystem is not triggered by any signal. What should I check to solve this issue?
Kind regards
3 Comments
Answers (1)
Akshat Dalal
on 26 Oct 2024 at 10:52
Hi Ada,
This could be because Simulink typically optimizes simulation by omitting some test-cases. However, when a scope block is there, these cannot be optimized and thus you get complete coverage.
To get complete coverage without scope block by avoiding these optimizations, you can disable the 'Conditional input branch execution' setting. To do this, navigate to 'Configuration Parameters -> Simulation Target -> Advanced Parameters' tab and ensure that the parameter is turned off. Remember to disable this parameter for the configurations of all model references as well.
0 Comments
See Also
Categories
Find more on Collect Coverage for Models in Help Center and File Exchange
Products
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!