主要内容

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

类中的函数和对象的列表金宝app®测试™编程接口,参见测试脚本

创建并运行一个基线测试用例

这个例子展示了如何使用sltest.testmanager用于自动化测试和生成报告的函数、类和方法。您可以创建一个测试用例,编辑测试用例标准,运行测试用例,导出模拟输出,并以编程方式生成结果报告。该示例将模型的模拟输出与基线进行比较。

打开此示例的模型openExample (“sldemo_absbrake”);创建测试文件、测试套件和测试用例结构。tf = sltest.testmanager.TestFile(“API测试文件”);ts = createTestSuite(tf,“API测试套件”);tc = createTestCase(ts,“基线”“基准API测试用例”);删除默认的测试套件tsDel = getTestSuiteByName(tf,“新测试套件1”);删除(tsDel);将被测试的系统分配给测试用例setProperty (tc,“模型”“sldemo_absbrake”);捕获基线标准基线= captureBaselineCriteria“baseline_API.mat”,真正的);通过在测试用例中重写一个新的模型参数来测试它%参数集ps = addParameterSet(tc,“名字”“API参数设置”);po = addParameterOverride(ps,“米”, 55岁);为一个信号设置基线标准公差sc = getSignalCriteria(基线);sc(1)。AbsTol = 9;运行测试用例并返回带有结果数据的对象ResultsObj = run(tc);获取测试用例结果和Sim Output运行数据集tcr = getTestCaseResults(ResultsObj);runDataset = getOutputRuns(tcr);打开测试管理器,以便您可以查看模拟%输出和比较数据sltest.testmanager.view;从结果数据生成一个报告filePath =“test_report.pdf”;sltest.testmanager.report (ResultsObj filePath,...“作者”“测试工程师”...“IncludeSimulationSignalPlots”,真的,...“IncludeComparisonSignalPlots”,真正的);导出Sim输出运行数据集数据集=导出(runDataset);

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

创建并运行一个等价测试用例

本示例比较两个模拟之间的信号数据以测试等效性。

打开此示例的模型openExample (“sldemo_absbrake”);创建测试文件、测试套件和测试用例结构。tf = sltest.testmanager.TestFile(“API测试文件”);ts = createTestSuite(tf,“API测试套件”);tc = createTestCase(ts,“对等”“等价测试案例”);删除默认的测试套件tsDel = getTestSuiteByName(tf,“新测试套件1”);删除(tsDel);将被测试的系统分配给测试用例%用于模拟1和模拟2setProperty (tc,“模型”“sldemo_absbrake”“SimulationIndex”1);setProperty (tc,“模型”“sldemo_absbrake”“SimulationIndex”2);在模拟1和模拟2中添加参数覆盖ps1 = addParameterSet(tc,“名字”“参数集1”“SimulationIndex”1);po1 = addParameterOverride(ps1,“农达”, 1.20);ps2 = addParameterSet(tc,“名字”“参数集2”“SimulationIndex”2);po2 = addParameterOverride(ps2,“农达”, 1.24);捕获等价条件eq = captureequiencecriteria (tc);为一个信号设置等效准则公差sc = getSignalCriteria(eq);sc(1)。AbsTol = 2.2;运行测试用例并返回带有结果数据的对象ResultsObj = run(tc);打开测试管理器,以便您可以查看模拟%输出和比较数据sltest.testmanager.view;

在测试管理器结果的等效标准结果部分中你。Ww信号通过是因为公差值。其他信号比较没有通过,整个测试用例失败。

运行一个测试用例并收集覆盖率

这个例子展示了如何使用一个模拟测试用例来收集覆盖率结果。要获得保险,你需要一个金宝app仿真软件覆盖™许可证。

打开此示例的模型openExample (“sldemo_autotrans”);创建测试文件、测试套件和测试用例结构。tf = sltest.testmanager.TestFile(“API测试文件”);ts = createTestSuite(tf,“API测试套件”);tc = createTestCase(ts,“模拟”“覆盖测试用例”);删除默认的测试套件tsDel = getTestSuiteByName(tf,“新测试套件1”);删除(tsDel);将被测试的系统分配给测试用例setProperty (tc,“模型”“sldemo_autotrans”);在测试文件级别打开覆盖设置cov = getCoverageSettings(tf);浸。RecordCoverage = true;启用MCDC和信号范围覆盖指标浸。MetricSettings =“先生”运行测试用例并返回带有结果数据的对象Rs = run(tf);获取覆盖结果cr = getCoverageResults(rs);打开测试管理器以查看结果sltest.testmanager.view;

结果和工件窗格的测试管理器,单击结果。您可以查看汇总的覆盖率结果。

创建并运行测试用例迭代

这个例子展示了如何创建测试迭代。控件中出现的表迭代可以以编程方式创建迭代测试用例的一部分。该示例创建了一个模拟测试用例,并为每个迭代分配了一个Signal Editor场景。

打开此示例的模型openExample (“sldemo_autotrans”);创建测试文件、测试套件和测试用例结构。tf = sltest.testmanager.TestFile(“迭代测试文件”);ts = getTestSuites(tf);tc = createTestCase(ts,“模拟”模拟的迭代的);指定模型为被测系统setProperty (tc,“模型”“sldemo_autotrans”);设置表迭代创建迭代对象testtr1 = sltesteration;%设置迭代设置setTestParam (testItr1“SignalEditorScenario”“通过操纵”);将迭代添加到测试用例testItr1 addIteration (tc);设置另一个表迭代创建迭代对象testtr2 = sltesteration;%设置迭代设置setTestParam (testItr2“SignalEditorScenario”“惯性”);将迭代添加到测试用例testItr2 addIteration (tc);运行包含迭代的测试用例结果= run(tc);获得迭代结果tcResults = getTestCaseResults(结果);iterResults = getIterationResults(tcResults);

相关的话题