主要内容

扩展现有的测试套件

此示例演示如何使用Simulink®设计验证程序™ 扩展现有金宝app测试套件以获得缺失的模型覆盖率。

分析示例模型并生成测试套件以实现完全覆盖。然后,修改模型,使测试用例不再实现完全覆盖。最后,使用Simulink®Design Verifier分析修改后的模型以获得缺少的覆盖™.金宝app

生成初始测试套件

分析sldvdemo\u巡航控制建模并生成实现完全模型覆盖的测试套件。要分析模型以生成提供模型覆盖的测试用例,请使用sldvrun功能。使用设置设计验证参数SLDV选项.

开放式系统“sldvdemo\u巡航控制”;opts=sldvoptions;opts.Mode=“测试生成”;opts.modelCoverage对象=“MCDC”; opts.saveharnesmodel=“关”;选择保存报告=“关”; [状态,文件]=sldvrun(“sldvdemo\u巡航控制”,opts,true);

测试生成分析结果显示在Simulink Design Verifier结果摘要窗口中。金宝app

封闭系统(“sldvdemo\u巡航控制”,0);

核实全部保险范围

这个sldvruntest函数使用现有测试套件模拟模型cvhtml函数生成一个覆盖率报告,该报告指示sldvdemo\u巡航控制模型

开放式系统“sldvdemo\u巡航控制”;[outData,initialCov]=sldvruntest(“sldvdemo\u巡航控制”,files.DataFile,[],true);cvhtml(“初始覆盖”,initialCov);关闭系统(“sldvdemo\u巡航控制”,0);

修改模型

加载修改后的sldvdemo\u巡航控制\u模块模型。控制器目标速度值限制为70,通过使用饱和

加载系统“sldvdemo\u巡航控制\u模块”; 加载系统“sldvdemo\u巡航控制\u模块/控制器”;

测量现有测试套件实现的覆盖率

这个sldvruntest函数模拟修改后的sldvdemo\u巡航控制\u模块具有现有测试套件和与相同输入的模型sldvdemo\u巡航控制模型cvhtml函数生成一个覆盖率报告,该报告指示修改的sldvdemo\u巡航控制\u模块模型不再实现完全覆盖。

[outData,startCov]=sldvruntest(“sldvdemo\u巡航控制\u模块”,files.DataFile,[],true);cvhtml(“原始测试套件的覆盖率”,startCov);

扩展现有的测试套件

要实现全车型覆盖,请斯尔德芬科夫函数分析模型并扩展现有的测试套件。

[状态、数据、文件]=sldvgencov(“sldvdemo\u巡航控制\u模块”,opts,true,startCov);

核实全部保险范围

验证新的测试套件是否实现了sldvdemo\u巡航控制\u模块修正模型sldvruntest函数用扩展的测试套件来模拟修改后的模型。这个cvhtml报告显示了sldvdemo\u巡航控制\u模块模型

[additionalOut,additionalCov]=sldvruntest(“sldvdemo\u巡航控制\u模块”,files.DataFile,[],true);totalCov=startCov+additionalCov;cvhtml(“附加保险”,totalCov);

要完成示例,请关闭模型。

封闭系统(“sldvdemo\u巡航控制\u模块”);