matlab - Simulink Design Verifier:输入参数 #1 是无效的 cvdata 对象
问题描述
我正在尝试在Matlab 2020a上的一个非常简单的 Simulink 模型上运行一些测试。我通过使用测试管理器应用程序获得了测试结果,它允许我设置测试用例。我创建的函数很简单,它只是检查两个布尔值,并根据自己的值返回另一个布尔值,所以我在这里没有报告。
我的程序如下:
从 Simulink Test Manager -> New Test File -> Test For Model Component -> Importing both Top Model and Component to create a Harness -> Using Design Verifier options(与默认值相比的唯一更改是 (1) Test Generation ->模型覆盖目标:MCDC;和 (2) 报告 -> 生成结果报告)和 IMPORTING 测试工具输入作为源 -> 使用测试输出下的组件作为基线 -> 将数据保存为 Excel 工作表。然后生成测试,一切正常。然后我使用一个小的 python 脚本来编辑 Excel 文件,生成一个具有如下结构的 Oracle:
time Var_A Var_B time Out1:1
AbsTol:0
type:boolean type:boolean Type:int8
Interp:zoh Interp:zoh Interp:zoh
0 0 1 0 0
0.4 1 1 0.4 1
0.8 0 0 0.8 TRUE
在这之后,我必须让 Simulink 写一份项目的 PDF 报告。为此,我设置了以下选项:
从测试工具:输入 -> 在测试结果中包含输入数据;在最后一个时间点停止模拟;基线标准 -> 在测试结果中包含基线数据;覆盖率设置 -> 记录被测系统的覆盖率;记录参考模型的覆盖率;
从顶层测试文件夹:Coverage Settings -> Record coverage for system under test;记录参考模型的覆盖率;覆盖指标:决策;健康)状况; 中央疾控中心;测试文件选项->在执行结束时关闭所有打开的图形;执行后生成报告(带有作者和文件路径);包括 Matlab 版本;结果:所有测试;测试要求;标准和评估图;模拟元数据;错误日志和消息;覆盖结果;文件格式 PDF。
然后我让它运行。测试经理告诉我一切都很好,但由于某种原因,每当它必须创建报告时,它都会向我抛出一个错误:
X_component_test: Input argument #1 is an invalid cvdata object. CVDATA objects become invalid when their associated models are closed or modified
现在,我确信这在使用更复杂的组件之前可以正常工作,但我不知道我在这里做错了什么。有人有线索吗?
解决方案
最后,解决方案比我想象的要简单得多。只需删除所有 .cv 文件并清理项目文件夹中的所有测试文件或不必要的文件。当存在太多时,Matlab 似乎有问题。此外,必须修改脚本以删除该 TRUE 值并将其替换为 1。
推荐阅读
- javascript - 如何在javascript中更新嵌套对象数组
- python-3.x - 如何使用openCV python降低USB网络摄像头2.0的帧速率
- java - 为什么 MaxRAMPercentage 低于 MinRAMPercentage?
- javascript - 让粒子成为我的后台登陆页面
- octave - 在 Octave 中定义自定义线型以用于多个图形
- amazon-web-services - AWS 是否会关闭每个可用区(AZ)或整个区域进行维护
- swift - 如何在我的 iOS 应用程序中集成 Appsee 线框回放?
- haskell - 使用 STM 被“卡住”
- java - 我需要一些关于登录系统的帮助
- macos - tcpdump:过滤器表达式中的语法错误:语法错误