主要内容

扩展现有的测试套件

这个例子展示了如何使用仿真软件®设计校验™扩展现有测试套件来金宝app获取丢失的模型覆盖。

你分析一个例子模型和生成测试套件实现全覆盖。然后,不再修改模型,测试用例实现全面覆盖。最后,您修改后的模型分析获得失踪的报道通过使用仿真软件®设计验证人™。金宝app

生成一个初始测试套件

分析sldvdemo_cruise_control模型和生成一个测试套件,实现全覆盖模型。分析模型来生成测试用例,覆盖模型,使用sldvrun函数。设置设计验证参数sldvoptions

open_system“sldvdemo_cruise_control”;选择= sldvoptions;选择。模式=“TestGeneration”;选择。ModelCoverageObjectives =“MCDC”;选择。SaveHarnessModel =“关闭”;选择。SaveReport =“关闭”;(地位、文件)= sldvrun (“sldvdemo_cruise_control”、选择正确的);

测试生成分析结果出现在仿真软件设计校验结果总结窗口。金宝app

close_system (“sldvdemo_cruise_control”,0);

验证完全覆盖

sldvruntest函数模拟模型与现有的测试套件。的cvhtml函数产生一个覆盖报告表明最初的报道sldvdemo_cruise_control模型。

open_system“sldvdemo_cruise_control”;[outData, initialCov] = sldvruntest (“sldvdemo_cruise_control”,文件。丢失,[],真);cvhtml (“初始覆盖”,initialCov);close_system (“sldvdemo_cruise_control”,0);

修改模型

加载修改后的sldvdemo_cruise_control_mod模型。控制器的目标速度值限制在70个,通过使用一个饱和块。

load_system“sldvdemo_cruise_control_mod”;load_system“sldvdemo_cruise_control_mod /控制器”;

测量范围通过现有的测试套件

sldvruntest函数模拟了修改sldvdemo_cruise_control_mod与现有的测试套件和输入相同的模型sldvdemo_cruise_control模型。的cvhtml函数产生一个覆盖报告表明修改后的sldvdemo_cruise_control_mod模型不再达到完全覆盖。

[outData, startCov] = sldvruntest (“sldvdemo_cruise_control_mod”,文件。丢失,[],真);cvhtml (“与原testsuite报道”,startCov);

扩展现有的测试套件

覆盖,实现完整的模型sldvgencov函数分析模型,扩展了现有的测试套件。

(状态、covData文件)= sldvgencov (“sldvdemo_cruise_control_mod”选择,真的,startCov);

验证完全覆盖

验证新的测试套件实现全面覆盖sldvdemo_cruise_control_mod修改后的模型。的sldvruntest函数模拟修改后的模型与扩展的测试套件。的cvhtml报告显示总报道通过sldvdemo_cruise_control_mod模型。

[additionalOut, additionalCov] = sldvruntest (“sldvdemo_cruise_control_mod”,文件。丢失,[],真);totalCov = startCov + additionalCov;cvhtml (额外的覆盖的,totalCov);

完成,关闭模式。

close_system (“sldvdemo_cruise_control_mod”);