主要内容

以编程方式创建测试序列

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

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

1.加载模型。

模型='sltestcruisechart';load_system(型号)

2.创建测试线束。

sltest.harness.Create(模型,'名称''harness1'......'来源''测试序列')sltest.harness.load(模型,'harness1');set_param('harness1''停止''15');

作者测试序列

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

sltest.testsequence.addsymbol('harness1 / test sequence''最终'......'数据''当地的');sltest.testsequence.editsymbol('harness1 / test sequence''最终'......'数据类型''布尔值');

2.更改步骤的名称跑步initialize1.

sltest.testsequence.editstep('harness1 / test sequence''跑步'......'名称''initialize1');

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

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

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

init2actions = sprintf(['cruiseonoff = false; \ n'......'刹车=假; \ n'......'速度= 0; \ n'......'海岸= false; \ n'......'accelressw = false;']);sltest.testsequence.addstepafter('harness1 / test sequence'......'initialize2''braketest''行动',init2actions)sltest.testsequence.addtransition('harness1 / test sequence'......'braketest''最终== true''initialize2'

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

sltest.testsequence.addstepafter('harness1 / test sequence'......'limittest''initialize2')sltest.testsequence.addtransition('harness1 / test sequence'......'initialize2''真的''limittest'%添加一个步骤以使巡航控制并设置速度。setValueseac算2 = Sprintf('cruiseonoff = true; \ nspeed = 60;');sltest.testsequence.addstep('harness1 / test sequence'......'limittest.setvalues''行动',setValesactions2)%添加了一个步骤来接合巡航控制。setccacing = sprintf('Coastsetsw =真;');sltest.testsequence.addstepafter('harness1 / test sequence'......'limittest.engage''limittest.setvalues''行动',setccates)%添加了一步才能斜坡车速。sltest.testsequence.addstepafter('harness1 / test sequence'......'limittest.rampup''limittest.engage''行动''速度=速度+斜坡(5 * et);'%添加一个步骤以验证巡航控制是否已关闭。highlimverifactions = sprintf('验证(订婚== false)');sltest.testsequence.addstepafter('harness1 / test sequence'......'limittest.verifyhigh''limittest.rampup''行动',Highgrimveriface)%在步骤之间添加转换。速度斜坡过渡时%车速超过90。sltest.testsequence.addtransition('harness1 / test sequence'......'limittest.setvalues''真的''limittest.engage')sltest.testsequence.addtransition('harness1 / test sequence'......'limittest.engage''真的''limittest.rampup')sltest.testsequence.addtransition('harness1 / test sequence'......'limittest.rampup''速度> 90''limittest.verifyhigh'

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

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

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

关闭测试线束和模型

SLTEST.HARNESS.CLOSE(模型,'harness1');close_system(型号,0);

也可以看看