主要内容

以编程方式创建一个测试序列

这个例子展示了如何创建一个测试工具和测试序列使用编程接口。您创建了一个测试工具和测试序列块,和作者的测试序列来验证两个功能属性巡航控制系统。

创建一个测试工具包含一个测试序列块

1。加载模型。

模型=“sltestCruiseChart”;load_system(模型)

2。创建测试工具。

sltest.harness.create(模型,“名字”,“Harness1”,“源”,测试序列的)sltest.harness.load(模型,“Harness1”);set_param (“Harness1”,“StopTime”,“15”);
ans =结构体字段:模型:“sltestCruiseChart”名称:Harness1描述:”ownerHandle: 0.0016 ownerFullPath:“sltestCruiseChart”ownerType:仿真软件。金宝app立体图的verificationMode:“正常”saveExternally: 0 rebuildOnOpen: 0 rebuildModelData: 0 postRebuildCallback:“图形:0 origSrc:“测试序列”origSink:“测试评估”synchronizationMode:“SyncOnOpen”existingBuildFolder:“functionInterfaceName:“

作者测试序列

1。添加一个局部变量endTest并设置数据类型布尔。你使用endTest测试步骤之间的过渡。

sltest.testsequence.addSymbol (“Harness1 /测试序列”,“endTest”,“数据”,“本地”);sltest.testsequence.editSymbol (“Harness1 /测试序列”,“endTest”,“数据类型”,“布尔”);

2。改变步骤的名称运行Initialize1

sltest.testsequence.editStep (“Harness1 /测试序列”,“运行”,“名字”,“Initialize1”);

3所示。添加一个步骤输入输入检查离合器制动时巡航控制应用。添加子步骤定义和验证测试场景操作。

sltest.testsequence.addStepAfter (“Harness1 /测试序列”,“输入”,“Initialize1”,“行动”,“endTest = false;”)%添加一个从| Initialize1 | |,云台|。sltest.testsequence.addTransition (“Harness1 /测试序列”,“Initialize1”,“真正的”,“输入”)%这一小步使巡航控制和设置速度。% | SetValuesActions | BrakeTest.SetValues的行动。setValuesActions = sprintf (“CruiseOnOff = true; \全国= 50;);sltest.testsequence.addStep (“Harness1 /测试序列”,“BrakeTest.SetValues”,“行动”setValuesActions)%这一小步包括巡航控制。setCCActions = sprintf (“CoastSetSw = true;”);sltest.testsequence.addStepAfter (“Harness1 /测试序列”,“BrakeTest.Engage”,“BrakeTest.SetValues”,“行动”setCCActions)%这个步骤适用于刹车。brakeActions = sprintf (“CoastSetSw = false; \ nBrake = true;”);sltest.testsequence.addStepAfter (“Harness1 /测试序列”,“BrakeTest.Brake”,“BrakeTest.Engage”,“行动”brakeActions)%这一步验证巡航控制。brakeVerifyActions = sprintf (的验证(从事= = false) \ nendTest = true;”);sltest.testsequence.addStepAfter (“Harness1 /测试序列”,“BrakeTest.Verify”,“BrakeTest.Brake”,“行动”brakeVerifyActions)%添加步骤之间的转换。sltest.testsequence.addTransition (“Harness1 /测试序列”,“BrakeTest.SetValues”,“真正的”,“BrakeTest.Engage”)sltest.testsequence.addTransition (“Harness1 /测试序列”,“BrakeTest.Engage”,(2秒)后的,“BrakeTest.Brake”)sltest.testsequence.addTransition (“Harness1 /测试序列”,“BrakeTest.Brake”,“真正的”,“BrakeTest.Verify”)

4所示。添加一个步骤Initialize2初始化组件的输入。添加一个从输入Initialize2

init2Actions = sprintf ([“CruiseOnOff = false; \ n”“制动= false; \ n”“速度= 0;\ n”“CoastSetSw = false; \ n”“AccelResSw = false;”]);sltest.testsequence.addStepAfter (“Harness1 /测试序列”,“Initialize2”,“输入”,“行动”init2Actions) sltest.testsequence.addTransition (“Harness1 /测试序列”,“输入”,“endTest = = true”,“Initialize2”)

5。添加一个步骤限制限制检查离合器当巡航控制车辆速度超过了上限。添加一个过渡的Initialize2一步,并添加步骤来定义和验证操作。

sltest.testsequence.addStepAfter (“Harness1 /测试序列”,“限制”,“Initialize2”)sltest.testsequence.addTransition (“Harness1 /测试序列”,“Initialize2”,“真正的”,“限制”)%添加一个步骤,使巡航控制和设置速度。setValuesActions2 = sprintf (“CruiseOnOff = true; \全国= 60;);sltest.testsequence.addStep (“Harness1 /测试序列”,“LimitTest.SetValues”,“行动”setValuesActions2)%添加一个步骤进行巡航控制。setCCActions = sprintf (“CoastSetSw = true;”);sltest.testsequence.addStepAfter (“Harness1 /测试序列”,“LimitTest.Engage”,“LimitTest.SetValues”,“行动”setCCActions)%添加一个一步匝道车辆速度。sltest.testsequence.addStepAfter (“Harness1 /测试序列”,“LimitTest.RampUp”,“LimitTest.Engage”,“行动”,“速度=速度+坡道(5 *等);“)%添加一个步骤来验证巡航控制系统是关闭的。highLimVerifyActions = sprintf (“验证(从事= = false)”);sltest.testsequence.addStepAfter (“Harness1 /测试序列”,“LimitTest.VerifyHigh”,“LimitTest.RampUp”,“行动”highLimVerifyActions)%添加步骤之间的转换。斜坡时转换速度%车速超过90。sltest.testsequence.addTransition (“Harness1 /测试序列”,“LimitTest.SetValues”,“真正的”,“LimitTest.Engage”)sltest.testsequence.addTransition (“Harness1 /测试序列”,“LimitTest.Engage”,“真正的”,“LimitTest.RampUp”)sltest.testsequence.addTransition (“Harness1 /测试序列”,“LimitTest.RampUp”,“速度> 90”,“LimitTest.VerifyHigh”)

打开测试工具来查看测试序列。

sltest.harness.open(模型,“Harness1”);

双击测试序列块打开编辑器和视图测试序列。

关闭测试工具和模型

sltest.harness.close(模型,“Harness1”);close_system(模型中,0);

另请参阅