Model Coverage With sltest.TestCase

4 次查看(过去 30 天)
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.

采纳的回答

Taylor
Taylor 2024-4-9
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))

更多回答(0 个)

类别

Help CenterFile Exchange 中查找有关 Results, Reporting, and Test File Management 的更多信息

Community Treasure Hunt

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

Start Hunting!

Translated by