主要内容

使用脚本创建和运行测试用例

有关函数和对象列表万博1manbetx®TEST™programmatic接口,见测试脚本

创建并运行基线测试用例

此示例显示了如何使用sltest.testManager.自动测试和生成报告的函数,类和方法。您可以创建一个测试用例,编辑测试用例条件,运行测试用例,导出模拟输出,以编程方式生成报告。该示例将模型的仿真输出与基线进行了比较。

%创建测试文件,测试套件和测试用例结构tf = sltest.testManager.Testfile('api测试文件');ts = createTestsuite(TF,'api test suite');tc = createTestCase(TS,'基线''基线API测试案例');%删除默认的测试套件tsdel = gettestsuitebyname(tf,'新测试套件1');删除(Tsdel);%将测试的系统分配给测试用例setProperty(TC,'模型''sldemo_absbrake');%捕获基线标准基线= CaptureBaselineCriteria(TC,'baseline_api.mat',真的);通过在测试用例中覆盖它来测试新模型参数%参数集ps = addparameterset(tc,'姓名''api参数集');po = addparameteroverride(ps,'M',55);%设置一个信号的基线标准容差sc = getsignalcriteria(基线);sc(1).abstol = 9;%运行测试用例并使用结果数据返回对象结果obj = run(tc);%获取测试用例结果和SIM输出运行数据集tcr = gettestcaseresults(结果obj);rundataset = getoutputruns(tcr);%打开测试管理器,以便您可以查看模拟%输出和比较数据sltest.testmanager.view;%从结果数据生成报告FILEPATH =.'test_report.pdf';sltest.testmanager.report(eScessobj,filepath,......'作者''测试工程师'......'包括imulationsignalplots',真的,......'IncludeComparisonSignalplots',真的);%导出SIM输出运行数据集dataset =导出(RunDataset);

测试用例失败,因为模拟输出和基线标准之间的信号比较只有一个在公差范围内。结果报告是PDF,并在完成后打开。有关更多报告生成设置,请参阅sltest.testManager.Report.功能参考页面。

创建和运行等效测试案例

此示例将两个模拟之间的信号数据进行比较以测试等价。

%创建测试文件,测试套件和测试用例结构tf = sltest.testManager.Testfile('api测试文件');ts = createTestsuite(TF,'api test suite');tc = createTestCase(TS,'等价''等价测试案例');%删除默认的测试套件tsdel = gettestsuitebyname(tf,'新测试套件1');删除(Tsdel);%将测试的系统分配给测试用例仿真1和仿真2setProperty(TC,'模型''sldemo_absbrake''simulationIndex',1);setProperty(TC,'模型''sldemo_absbrake''simulationIndex',2);%添加参数覆盖到模拟1和2ps1 = addparameterset(tc,'姓名''参数设置1''simulationIndex',1);po1 = addparameteroverride(ps1,'rr',1.20);ps2 = addparameterset(tc,'姓名''参数设置2''simulationIndex',2);po2 = addparameteroverride(ps2,'rr',1.24);%捕获等价标准eq = Captureequival enceCriteria(TC);%设置一个信号的等效标准容差sc = getsignalcriteria(eq);sc(1).abstol = 2.2;%运行测试用例并使用结果数据返回对象结果obj = run(tc);%打开测试管理器,以便您可以查看模拟%输出和比较数据sltest.testmanager.view;

在测试管理器结果的等效标准结果部分中,yout.ww信号通过由于容差值。其他信号比较不会通过,并且整个测试用例失败。

运行一个测试案例并收集覆盖范围

此示例显示如何使用模拟测试用例来收集覆盖结果。收集覆盖范围,您需要一个万博1manbetxSimulink Coverage™执照。

%创建测试文件,测试套件和测试用例结构tf = sltest.testManager.Testfile('api测试文件');ts = createTestsuite(TF,'api test suite');tc = createTestCase(TS,'模拟''覆盖测试案例');%删除默认的测试套件tsdel = gettestsuitebyname(tf,'新测试套件1');删除(Tsdel);%将测试的系统分配给测试用例setProperty(TC,'模型''sldemo_autotrans');%在测试文件级别打开覆盖设置cov = getcoveragesettings(tf);cov.recordcoverage = true;%启用MCDC和信号范围覆盖度量标准cov.metricsettings ='先生';%运行测试用例并使用结果数据返回对象RS = RUN(TF);%获得覆盖结果Cr = getCoverageresults(RS);%打开测试管理器以查看结果sltest.testmanager.view;

在里面结果和文物测试管理器的窗格,单击结果。您可以查看聚合的覆盖结果。

创建和运行测试案例迭代

此示例显示如何创建测试迭代。您可以以编程方式创建表迭代迭代测试案例的部分。该示例创建了一个模拟测试用例,并为每个迭代分配信号编辑器方案。

%创建测试文件,测试套件和测试用例结构tf = sltest.testManager.Testfile('迭代测试文件');Ts = getTestsuites(TF);tc = createTestCase(TS,'模拟''模拟迭代');%将模型指定为下测试系统setProperty(TC,'模型''sldemo_autotrans');%设置表迭代%创建迭代对象testitr1 = SLTestEsteration;%设置迭代设置settestparam(testitr1,'signaleDitorscenario''通过机动');%添加迭代以测试案例Adderation(TC,Testitr1);%设置另一个表迭代%创建迭代对象testitr2 = SLTestEsteration;%设置迭代设置settestparam(testitr2,'signaleDitorscenario''滑行');%添加迭代以测试案例添加剂(Tc,testitr2);%运行测试用例,包含迭代结果=运行(TC);%获得迭代结果tcresults = getTestCaserSults(结果);iTerresults = getTerationResults(Tcresults);

相关话题