如何在Simulink设计验证器中为具有一维查找表/开关/选择器万博1manbetx块的子系统创建测试用例?

3次浏览(过去30天)
我想使用Simulink D万博1manbetxesign Verifier为子系统自动创建带有1-D查找表/开关/选择器块的测试用例,同时确保完全覆盖。我怎么做呢?

接受的答案

MathWorks支万博1manbetx援小组
编辑:MathWorks支万博1manbetx援小组 2021年3月9日
为模型覆盖率生成测试用例的工作流程已经在以下链接中被记录:
上面链接中使用的示例是一个具有1个输入端口和1个输出端口的开关块。但是,这个链接并没有说明在子系统中使用开关/查找表/选择器块的情况。您将需要执行本文中提到的所有步骤。在您检查模型兼容性之前,您将需要添加一个块替换规则,该规则对应于您想要使用的块,以生成基于断点/输入的所有测试用例。
这些替换规则列在下面的链接中:
例如:要创建基于1-D查找表的断点的测试用例,您将需要使用查找表的子系统的配置参数,并导航到以下部分:Design Verifier >块替换,并将'blkrep_rule_lookup_normal'添加到块替换规则列表部分,如所附图像:blkRep.png
如果您生成测试用例时没有添加这个文件,那么在您的数据检查器窗口中就不会设置任何目标,也不会看到任何值。请注意,您将需要添加多个文件,这取决于您在模型中使用的块。
如果您有一个查找表,它的输出馈送到交换机的第一个输入,您将注意到您得到的覆盖率低于以前的100%。主要原因是Switch块仅在第二个Switch输入为false(或者在有条件地使用查找表输出的不同场景下)时才使用查找表的输出。当查找表的输出被有条件地使用时,并不是所有的插值间隔都将被覆盖,并且覆盖率将小于100%。为了覆盖报告在这个模型上显示100%的表覆盖,在模拟测试用例之前,您将需要禁用配置参数的优化窗格中的“条件输入分支执行”。如果你很难找到这个参数,你可以简单地在“配置参数”对话框中的“所有参数”选项卡的搜索框中输入“有条件的输入分支执行”,然后在运行脚本之前取消这个选项。
额外的链接:

更多答案(0)

社区寻宝

在MATLAB Central中找到宝藏,并发现社区如何帮助您!

开始狩猎!