测试迭代

您可以通过使用测试用例反复运行相同的测试用例与不同的数据或配置集。迭代可以使用不同的:

  • 参数。

  • 外部输入。

  • 配置集。

  • 信号编辑器场景。

  • 信号生成器组。

  • 基线数据。

在设置迭代迭代测试用例的一部分。您可以使用表迭代或脚本迭代。如果测试使用万博1manbetx®覆盖™,相同的覆盖率设置适用于测试用例中的所有迭代。

无论您使用的表或脚本迭代,您可以通过点击看到测试用例迭代显示迭代按钮。

创建表迭代

表迭代提供在模型或测试用例中添加基于迭代的项的快速方法。要创建表格的迭代,首先要使适当的列可见:

  1. 展开>表迭代部分。

  2. 在该表中,添加或通过单击删除列在列表按钮,然后选择项目。例如,为了显示参数和配置集,选择参数设置配置集项目。

添加手动迭代

  1. 要手动添加迭代,请点击添加。该表显示一个新的迭代一行。

  2. 指定迭代名称并选择迭代项目。例如,这个测试案例有四个迭代。每个迭代使用外部输入和基准数据的不同组合。

生成表格迭代

您还可以从测试用例和模型中的数据自动生成迭代:

  1. 点击自动生成按钮。

  2. 选择项目产生的迭代。

    如果您选择多个项目,在顺序配对创建迭代。例如:

    • 该模型sldemo_autotrans有个信号生成器块与四个信号组,标记为S1, S2, S3和S4。

    • 测试用例具有三个参数集,标记为P1,P2,和P3。

    • 自动生成迭代信号生成器团体和参数设置产生三个迭代。迭代由三个参数集的限制。每次迭代中包含一个信号生成器组和一个参数集信号生成器基团和参数集的顺序是匹配的,它们中列出信号生成器块和参数集部分。

  3. 为迭代指定一个可选的命名规则。在迭代的命名规则框中,输入规则:

    • 要在名称中使用的每个设置的名称,并删除空格

    • 下划线或空间分开的每个设置

    例如,如果希望包含参数集、配置集和基线文件名的名称,请输入ParameterSet_ConfigurationSet_Baseline

部分选项 目的

信号生成器组

适用于输入一个仿真,基线,或等价的测试的情况下,对指定的部信号生成器组。每个信号生成器组被用来产生一个迭代。

信号编辑场景

适用于输入一个仿真,基线,或等价的测试的情况下,对指定的部信号编辑场景。每个信号编辑器场景都用于生成一个迭代。

参数设置

适用于参数覆盖一个仿真,基线,或等价测试用例部分。每个参数覆写集被用于产生一个迭代。

外部输入

适用于输入一个仿真,基线,或等价的测试的情况下,对指定的部外部输入集。每个外部输入集用于生成一个迭代。

配置集

适用于配置设置覆盖一个仿真,基线,或等价测试用例部分。每个迭代使用指定的配置设置。

底线

仅适用于基线测试用例类型,特别是基准标准基线试验箱子部分。每个基线标准集被用于产生一个迭代。

模拟1或2

只适用于等价测试用例类型。在“自动生成报告”对话框的顶部,有一个用于的菜单模拟1要么模拟2。这些部分对应于等价测试用例内的两个模拟部分。

创建脚本迭代

您可以在使用脚本运行的迭代的一组自定义脚本迭代部分。例如,您可以使用自定义迭代来定义参数集或自定义迭代顺序。脚本迭代是在测试执行时的运行时生成的。

迭代脚本组件

迭代脚本必须包含某些组件。最基本的迭代脚本包含三个要素:

  1. 迭代对象,使用创建的sltestiteration

  2. 迭代设置,使用设置setTestParam

  3. 迭代注册,添加使用addIteration

例如,此脚本创建一个迭代,该迭代从a运行一个信号组信号生成器块。

%%迭代使用信号生成器组%设置新的迭代对象testItr = sltestiteration;利用信号生成器组%设定重复设置setTestParam (testItr“SignalBuilderGroup”,sltest_signalBuilderGroups {1});%添加重复,将在此运行测试用例这里使用了预定义的sltest_testCase变量addIteration (sltest_testCase testItr);

有关重复测试类的更多信息,请参阅sltest.testmanager.TestIteration。可以遍历多个项目,如信号生成器组。您都可以遍历信号生成器在块组通过将基本迭代脚本在一个循环:

%%遍历所有信号生成器组%确定可能的迭代次数numSteps =长度(sltest_signalBuilderGroups);创建每个迭代k = 1: numSteps%设置新的迭代对象testItr = sltestiteration;%设置迭代设置setTestParam (testItr“SignalBuilderGroup”,sltest_signalBuilderGroups {K});%添加重复,将在此运行测试用例您可以传入一个可选的迭代名addIteration (sltest_testCase testItr);结束

预定义变量

您可以使用预定义的变量来编写迭代脚本。若要查看测试管理器中预定义变量的列表,请展开帮助创建测试迭代部分。您可以在内部脚本盒写剧本的迭代脚本迭代部分。脚本框是一个功能工作区,即MATLAB®基本工作区无法从脚本框访问信息。如果在脚本框中定义变量,则其他工作空间不能使用该变量。

预定义的变量是:

  • sltest_bdroot- 模型模拟由测试情况下,定义为字符串

  • sltest_sut- 被测系统,定义为一个字符串

  • sltest_isharness- - - - - -真正如果sltest_bdroot被线束模型,定义为逻辑

  • sltest_externalInputs- 名称的外部输入,定义为字符串的单元阵列

  • sltest_parameterSets- 名称的参数覆写集,定义为字符串的单元阵列

  • sltest_configSets配置设置的名称,定义为字符串的单元格数组

  • sltest_tableIterations-在迭代表中创建的迭代对象,定义为的单元格数组sltest.testmanager.TestIteration对象

  • sltest_testCase- 当前测试用例对象,定义为sltest.testmanager.TestCase对象

脚本迭代模板

您可以使用模板为您的测试用例快速地生成迭代信号生成器基,参数集,外部输入,配置集,和基线组,如果使用的是一个基线测试用例。脚本迭代模板遵循步调一致排序和测试设置配对。有关步调一致排序的更多信息,请参阅创建表迭代

例如,如果你想建设者脚本迭代组运行的所有信号:

  1. 点击迭代模板

  2. 选择要遍历测试情况设置。点击

    该脚本生成并添加到以下任何现有的脚本,脚本对话框。

  3. 要生成一个在您运行测试用例时预览执行的迭代的表,单击显示迭代

从迭代中捕获基线数据

这个例子展示了如何通过从测试用例表迭代捕获数据创建基线测试。您在模型中创建信号编辑器情景迭代。之前运行的例子,导航到MATLAB®路径上的可写文件夹。

1.打开模型。在命令行,输入

模型='sltestCar';open_system(型号);

2.打开测试管理器并创建一个测试文件。在命令行,输入sltestmgr

3.在测试管理器中,单击模型测试文件来自落下。

4.指定测试文件。

  1. 输入sltestCar随着模型

  2. 输入测试文件名或完整路径位置

  3. 选择底线随着测试类型

5.选择测试用例。展开测试文件并选择sltestCar /输入测试用例。

6.选择基准数据的信号:

  1. 模拟输出部分中,点击添加

  2. 在模型的画布,选择输出转矩信号和连接对话框,选中该信号。选择车速信号并在对话框中选中它的方框。

  3. 在测试管理器消息对话框中,单击完成

  4. 信号出现在记录信号表。

7.测试用例查看迭代:

展开迭代表迭代部分。对于选择的测试的迭代自动出现。迭代对应四个信号编辑场景。

8.捕获迭代的基线数据:

  1. 基准标准部分中,单击旁边的箭头捕获

  2. 选择MAT作为文件格式

  3. 属性中保存基线数据文件的位置文件字段。

  4. 选择捕获迭代的基线

  5. 点击捕获

该模型模拟了所有的信号编辑场景。为基线数据output_torquevehicle_speed在四个MAT文件中捕获。此外,每个基线数据集都被添加到表中相应的迭代中。

浏览一组参数

脚本化的迭代可以通过扫描一组参数来测试模型。您可以使用此脚本为模型工作区参数尝试不同的值迅速的在模型中sltestCar。添加脚本下迭代>脚本迭代

对Iei参数进行%%的迭代%设置的参数值扫过IeiValues = [0.021,0.022,0.022,0.023];numSteps =长度(IeiValues);创建每个迭代k = 1: numSteps%设置新的迭代对象testItr = sltestiteration;lei的设定值(模型工作空间中的参数)setVariable(testItr,“名字”,'IEI','资源',“模型空间”,“价值”,IeiValues(K));%添加重复,将在此运行测试用例addIteration (sltest_testCase testItr);结束

当您添加脚本,请点击显示迭代。你可以看到重复的脚本创建。

运行测试产生用于每次迭代的结果。

另请参阅

|

相关话题