Main Content

本页采用了机器翻译。点击此处可查看英文原文。

sltest.testmanager.TestOptions 类

命名空间: sltest.testmanager

添加测试覆盖率的选项

自 R2022a 起

描述

使用 sltest.testmanager.TestOptions 对象指定在向测试添加缺失覆盖率时要使用的选项。将此对象与 sltest.testmanager.addTestsForMissingCoverage 一起使用。

sltest.testmanager.TestOptions 类是 handle 类。

创建对象

testOpts = sltest.testmanager.TestOptions() 创建一个具有默认属性的 TestOptions 对象。创建对象后,设置 TestFilePathTestCaseParentHarnessOwnerHarnessName 属性。

testOpts = sltest.testmanager.TestOptions(tc)sltest.testmanager.TestCase 对象创建 TestOptions 对象,即 tc。使用此语法将增加的覆盖率附加到测试用例。TestFilePathParentHarnessOwnerHarnessName 属性会自动填充。

testOpts = sltest.testmanager.TestOptions(harnessOwner,harnessName) 为测试框架 harnessName 创建 TestOptions 对象,该对象与模型或模型元素 harnessOwner 相关联。使用此语法可以将测试框架重新用于新的测试用例。

属性

全部展开

模型名称,指定为字符串。

属性:

GetAccess
public
SetAccess
public

测试文件名,指定为字符串。如果为 TestCase 和/或 Parent 属性指定值,则 TestFilePath 必须与现有测试用例或父级的 FilePath 相同。如果没有同时指定 TestCaseParent 的值,则必须为新的或现有的测试文件指定 TestFilePath

示例: "TestFilePath","myTests/baseline_test2.mldatx"

属性:

GetAccess
public
SetAccess
public

要添加覆盖率的新测试用例的名称,指定为 sltest.testmanager.TestCase 对象。

属性:

GetAccess
public
SetAccess
public

包含测试用例的测试套件,指定为 sltest.testmanager.TestSuite 对象。

属性:

GetAccess
public
SetAccess
public

测试类型,针对新测试用例或迭代指定为 "baseline""equivalence""simulation"。对于现有的测试用例,此属性自动设置为指定测试用例的类型。

属性:

GetAccess
public
SetAccess
public

等效性检验的仿真索引,指定为 12[1,2]。指定 1 或 2 分别为第一次或第二次仿真添加缺失的覆盖率。指定 [1,2] 会增加对两种仿真的覆盖率。

属性:

GetAccess
public
SetAccess
public

框架所有者,指定为字符串。HarnessOwner 是与框架关联的模型或模型元素。仅当创建新的框架时才指定框架所有者。对于现有的框架,此属性会自动设置为指定框架的所有者。

属性:

GetAccess
public
SetAccess
public

框架名称,指定为字符串。仅当您创建新的框架时才指定框架名称。对于现有的框架,此属性会自动设置为指定框架的名称。

属性:

GetAccess
public
SetAccess
public

框架输入源,指定为“Inport”或“Signal Editor”。)仅当您创建新的框架时才指定源。对于现有的框架,此属性会自动设置为指定框架的源。

属性:

GetAccess
public
SetAccess
public

示例

全部折叠

创建一个 TestOptions 对象,使用新的测试用例来增加覆盖率。

testOpts = sltest.testmanager.TestOptions()
testOpts = 

  TestOptions with properties:

            Model: ""
     TestFilePath: ""
         TestCase: [0×0 sltest.testmanager.TestCase]
           Parent: [0×0 sltest.testmanager.TestSuite]
     TestCaseType: Baseline
      SrcSimIndex: 1
     HarnessOwner: ""
      HarnessName: ""
    HarnessSource: INPORT

此示例显示当测试用例的覆盖率结果低于 100% 时如何增加覆盖率。

从测试文件中获取现有的测试用例,然后运行测试并获取覆盖率数据。创建一个 TestOptions 对象并将缺失的覆盖率添加到新测试用例的覆盖率数据中。运行新的测试用例并打开测试管理器。

load_system("CruiseControlAddCov.slx");

tf = sltest.testmanager.TestFile('CruiseControlAddCov.mldatx');
ts = getTestSuites(tf); 
testcaseObj = getTestCases(ts); 

tr = run(testcaseObj);
cvdata = getCoverageResults(tr);

testOpts = sltest.testmanager.TestOptions(testcaseObj); 
newTestCaseObj = sltest.testmanager.addTestsForMissingCoverage...
   (testOpts,cvdata);

tr = run(newTestCaseObj);

sltest.testmanager.view;

在测试管理器的结果和工件面板中,选择第一个结果。在聚合覆盖率结果部分中,覆盖率低于 100%。

现在,选择第二个结果。在汇总覆盖率结果部分,覆盖率增加到 100%。

清除并关闭测试管理器。

sltest.testmanager.clear
sltest.testmanager.clearResults
sltest.testmanager.close

版本历史记录

在 R2022a 中推出