Clear Filters
Clear Filters

Model Coverage With sltest.TestCase

4 views (last 30 days)
Taylor
Taylor on 31 Mar 2024
Answered: Taylor on 9 Apr 2024
I'm having problems collecting model coverage with script based tests in sltest.testCase.
The test case isn't super important. Basically I'm playing data back through a model reference.
A test case as simple as this demonstrates the issue:
classdef TestHarnessWithModelCoverage_1 < sltest.TestCase
methods (Test)
function testOne(testCase)
in = testCase.createSimulationInput('MODEL_XXXX',...
'WithHarness','MODEL_XXXX_HARNESS');
simOut = testCase.simulate(in);
testCase.verifyTrue(true);
end
end
end
The test case fails on line 384 of ModelCoveragePlugin:
out.addResultsField('CoverageResults',plugin.CoverageSettings.save([]))
With the error:
Error using assert
Assertion failed.
Error in codeinstrum.internal.codecov.CodeCovData/setAggregatedTestInfo
Error in codeinstrum.internal.codecov.CodeCovData/setTestRunInfo
Error in codeinstrum.internal.codecov.CodeCovDataGroup/setTestRunInfo
Error in cvdata/set.testRunInfo
Error in stm.internal.Coverage.saveHelper
Error in stm.internal.Coverage/save
I'm using Matlab 2022b. Has anybody else run into this issue? I can collect coverage on the model when running the test case, but not through the sltest framework.

Accepted Answer

Taylor
Taylor on 9 Apr 2024
There appears to be a bug in simulink 2022's model coverage plugin. The addResults field needs to be updated as follows.
out.addResultsField('CoverageResults',plugin.CoverageSettings.save(struct.empty))

More Answers (0)

Categories

Find more on Results, Reporting, and Test File Management in Help Center and File Exchange

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!