以编程方式创建测试序列

此示例显示如何使用程序化接口创建测试线束和测试序列。您创建测试线束和测试序列块,并创作测试序列以验证巡航控制系统的两个功能属性。

创建包含测试序列块的测试线束

1.加载模型。

模型=“sltestCruiseChart”; 负荷系统(模型)

2.创建测试线束。

sltest.harness.Create(模型,'姓名''harness1'......'来源'“测试序列”)sltest.线束.负载(型号,'harness1');set_param('harness1''停止''15');

作者测试序列

1.添加一个局部变量最终并将数据类型设置为布尔值。你用最终在测试步骤之间转换。

sltest.testsequence.addSymbol(“线束1/测试顺序”'最终'......“数据”'当地的');sltest.testsequence.editsymbol(“线束1/测试顺序”'最终'......'数据类型'“布尔”);

2.更改步骤的名称initialize1.

sltest.testsequence.editstep(“线束1/测试顺序”'跑'......'姓名''initialize1');

3.添加步骤博拉克斯特博拉克斯特在应用制动器时检查巡航控制脱离。添加子步骤定义测试场景操作和验证。

sltest.testsequence.addstepafter(“线束1/测试顺序”......'braketest''initialize1'“行动”'endtest = false;'%从| initialize1 |添加转换1 |到| braketest |。sltest.testsequence.addtransition(“线束1/测试顺序”......'initialize1'“真的”'braketest'%该子步骤使巡航控制并设置速度。%| SetValesactions |是braketest.setvalues的动作。setValesactions = sprintf('cruiseonoff = true; \ nspeed = 50;');sltest.testsequence.addstep(“线束1/测试顺序”......'braketest.setvalues'“行动”,setValuesActions)%此子步骤接合巡航控制。setccacing = sprintf('Coastsetsw =真;');sltest.testsequence.addstepafter(“线束1/测试顺序”......“制动测试,接合”'braketest.setvalues'“行动”,setccates)%此步骤应用制动器。brakeactions = sprintf('海岸= false; \ nbrake = true;');sltest.testsequence.addstepafter(“线束1/测试顺序”......'braketest.brake'“制动测试,接合”“行动”,brakeactions)%此步骤验证巡航控制已关闭。BrakeVerifactions = Sprintf('验证(订婚== false)\ nendtest = true;');sltest.testsequence.addstepafter(“线束1/测试顺序”......'braketest.verify''braketest.brake'“行动”,刹车件)%在步骤之间添加转换。sltest.testsequence.addtransition(“线束1/测试顺序”......'braketest.setvalues'“真的”“制动测试,接合”)sltest.testsequence.addtransition(“线束1/测试顺序”......“制动测试,接合”'之后(2,秒)''braketest.brake')sltest.testsequence.addtransition(“线束1/测试顺序”......'braketest.brake'“真的”'braketest.verify'

4.添加一个步骤initialize2.初始化组件输入。添加过渡博拉克斯特initialize2.

init2Actions=sprintf(['cruiseonoff = false; \ n'......'刹车=假; \ n'......'速度= 0; \ n'......'海岸= false; \ n'......'accelressw = false;']);sltest.testsequence.addstepafter(“线束1/测试顺序”......'initialize2''braketest'“行动”,init2actions)sltest.testsequence.addtransition(“线束1/测试顺序”......'braketest''最终== true''initialize2'

5.添加步骤极限测试极限测试检查车速超过高限时巡航控制脱离。从中添加过渡initialize2.步骤,并添加子步骤以定义操作和验证。

sltest.testsequence.addstepafter(“线束1/测试顺序”......'limittest''initialize2')sltest.testsequence.addtransition(“线束1/测试顺序”......'initialize2'“真的”'limittest'%添加一个步骤以启用巡航控制并设置速度。setValuesActions2=sprintf('cruiseonoff = true; \ nspeed = 60;');sltest.testsequence.addstep(“线束1/测试顺序”......“LimitTest.SetValues”“行动”,setValuesActions2)%添加一个步骤以接合巡航控制。setccacing = sprintf('Coastsetsw =真;');sltest.testsequence.addstepafter(“线束1/测试顺序”......'limittest.engage'“LimitTest.SetValues”“行动”,setccates)%添加了一步才能斜坡车速。sltest.testsequence.addstepafter(“线束1/测试顺序”......'limittest.rampup''limittest.engage'“行动”'速度=速度+斜坡(5 * et);'%添加一个步骤以验证巡航控制是否已关闭。highlimverifactions = sprintf('验证(订婚== false)');sltest.testsequence.addstepafter(“线束1/测试顺序”......'limittest.verifyhigh''limittest.rampup'“行动”,Highgrimveriface)%在步骤之间添加转换。速度斜坡过渡时%车速超过90。sltest.testsequence.addtransition(“线束1/测试顺序”......“LimitTest.SetValues”“真的”'limittest.engage')sltest.testsequence.addtransition(“线束1/测试顺序”......'limittest.engage'“真的”'limittest.rampup')sltest.testsequence.addtransition(“线束1/测试顺序”......'limittest.rampup''速度> 90''limittest.verifyhigh'

打开测试线束以查看测试序列。

sltest.harness.open(型号,'harness1');

双击测试序列块以打开编辑器并查看测试序列。

关闭测试线束和模型

sltest.线束关闭(型号,'harness1'); 关闭系统(型号0);