【Simulink Test】根据ExcelSheet创建TestCase
本文讲述使用Simulink Test对模型进行分类测试,通过不同ExcelSheet创建相应的TestCase,测试不同功能。
构建一个测试模型
如下图,该模型实现两个功能:
Fun1:IN1为真时OUT1=1,IN1为假时,OUT1=0;
Fun2:IN2为真时OUT2=1,IN2为假时,OUT2=0;
加入输入输出Port并与数据字典关联。
根据Excel-Sheet创建Test Case
创建模板测试测试工程
根据【Simulink模型自动化测试】创建模板测试Excel。
由于本次不使用模板测试工程,将自动生成的Test Suite和Test Case删除。
修改Test Sheet
将生成的Excel表格内的输入输出模板数据删除,仅保留表格头部分。
将本Sheet改名为Fun1,再新建一个Sheet命名为Fun2。
修改表格Sheet数据对Fun1和Fun2功能进行测试,修改后的数据如下:
注意:由于Fun1功能不关注IN2和OUT2,Fun2功能不关注IN1和OUT1,因此将不需要关注的输入输出删除。但是要注意要在第一个输入标明“Source: Input”,在第一个输出标明“Source: Output”,否则matlab不能正确识别输入输出。
创建Test Case
首先新建一个Test Suite,并命名为功能测试
再新建两个Baseline Test,分别命名为Fun1、Fun2。
创建好的TestCase如图:
将TestCase与模型和Excel关联
-
选中需要关联的TestCase,在SYSTEM UNDER TEST->中Model关联需要测试的模型。
-
在INPUTS选项中Add-Excel表格,关联Excel Sheet,并Map Inputs。
注意:
在INPUTS选项中,需要勾选Include input data in test result(在测试结果中包含输入数据)和Stop simulation at last time point(设置仿真停止时间为Excel的最大时间)。
当新增输入信号或删除输入信号后,也可以通过点击STATUS下的Warnings,从新map输入,若仅是修改输入信号各时间的值则不需要从新map。
- 在BASELINE CRITERIA选项中-Excel表格,关联TestCase与Excel的输出,并Refresh输出。
注意:
BASELINE CRITERIA选项中需要勾选Include baseline data in test result(在测试结果中包含输出数据)。
当输出修改时也可以通过Refresh按钮刷新输出;
4. 修改Fun1 TestCase与模型和Excel关联。
执行测试
选中相应的TestCase或TestSuite进行测试,并对测试结果进行分析。