执行功能测试并分析测试覆盖率

功能测试从基于需求构建测试用例开始。这些测试可以涵盖设计的关键方面,并验证单个模型组件是否满足需求。测试用例包括输入、预期输出和验收标准。

通过在测试套件中收集单独的测试用例,您可以系统地运行功能测试。为了检查回归,向测试用例添加基线标准,并迭代地测试模型。覆盖率度量反映了这些测试完全执行模型的程度。覆盖度量还可以帮助您添加测试和需求,以满足覆盖目标。

使用测试用例生成增量地增加测试覆盖率

这个例子展示了一个巡航控制模型的基于功能测试的测试工作流。您从一个有测试链接到外部需求文档的模型开始,分析模型的覆盖率万博1manbetx®覆盖™,递增地增加覆盖率万博1manbetx仿真软件设计校验™,并报告结果。

探索测试工具和模型

  1. 在工作文件夹中创建项目的副本。在命令行中,输入:

    路径= fullfile (matlabroot,“工具箱”,“共享”,“例子”,…“验证”、“src”,“巡航”)运行(fullfile(路径,slVerificationCruiseStart))

  2. 打开模型和测试工具。在命令行中,输入:

    open_system 万博1manbetxsimulinkCruiseAddReqExample sltest.harness.open(“simulinkCruiseAddReqExample”、“SafetyTest_Harness1”)
  3. 从。加载测试套件根据需求测试模型并报告结果并打开Simulink测试万博1manbetx管理器。在命令行中,输入:

    sltest.testmanager.load sltest.testmanager.view(“slReqTests.mldatx”)

  4. 打开测试序列块。序列测试系统在下列情况下断开:

    • 踩下刹车踏板

    • 速度超过极限

    一些测试序列步骤链接到需求文档万博1manbetxsimulinkCruiseChartReqs.docx

测量模型覆盖率

  1. 在Simuli万博1manbetxnk测试管理器中,单击slReqTests测试文件。

  2. 为测试文件启用覆盖率收集,在下面的右页中覆盖范围设置:

    • 选择记录引用模型的覆盖率

    • 使用覆盖过滤器文件名指定一个用于覆盖率分析的覆盖率过滤器。默认设置遵循模型配置参数设置。如果字段为空,则不会附加覆盖过滤器。

    • 选择决定,条件,MCDC

  3. 要运行测试,请在测试管理器工具栏上单击运行

  4. 当测试完成时,在测试管理器中选择结果。综合覆盖率结果表明,实例模型的决策覆盖率为50%,条件覆盖率为41%,MCDC覆盖率为25%。

生成测试以增加模型覆盖率

  1. 使用万博1manbetx仿真软件设计验证器生成额外的测试以增加模型覆盖率。在结果和工件,选择slReqTests测试文件并打开聚合覆盖率结果部分位于右窗格中。

  2. 右键单击测试结果并选择为缺失的覆盖率添加测试

  3. 利用,选择创建一个新的装具

  4. 点击好吧使用。向测试套件添加测试万博1manbetx仿真软件设计验证器。被测试的模型必须在MATLAB路径或工作文件夹中。

  5. 在Test Manager工具条上单击运行执行更新后的测试套件。测试结果包括组合测试用例输入的覆盖率,实现了增加的模型覆盖率。

相关的话题