主要内容

验证功能测试

您可以使用动态仿真模块®测试™为Simulink模型和生成的代码编写、管理和执行测试。测试管理器提供了一种交互式的方式,可以从零开始编写测试、导入现有测试数据和利用模型,以及组织测试。您可以单独运行测试用例,以批处理的方式运行,或者作为测试文件的筛选子集运行,并且您可以控制参数并迭代参数值。可以运行测试的模式有模型中、软件在循环(SIL)、处理器在循环(PIL)和硬件在循环(HIL)。要运行HIL测试,目标计算机必须具有仿真软件实时™安装。您也可以在多个版本的MATLAB中连续运行相同的测试®

结果包括测试层次结构中元素的简洁的通过/失败总结,包括迭代、测试用例、测试套件和测试文件。可视化工具帮助您深入到单个数据集,以确定,例如,特定故障的时间和原因。报道的结果仿真软件覆盖™帮助量化模型或代码被测试的程度。

例如,你可以:

  • 通过在不同环境(例如模型模拟、SIL、PIL和HIL执行)之间连续运行等价测试,比较模型和生成代码之间的结果。覆盖不支持SIL或PIL块。

  • 通过迭代参数值或配置参数来优化模型或代码。

  • 通过使用测试工具在单元级别开始测试,并在扩展到集成和系统级别时重用这些测试。

  • 在Simulink框图中运行包含测试向量和评估的模型。

仿真软件测试包括一个用于编写测试脚本的全面编程接口,并且Simulink测试可以使用MATLAB单元测试与MATLAB测试集成。

测试编写

当您编写一个测试时,您定义了测试输入、感兴趣的信号、信号通过/失败容忍、参数值上的迭代,以及模拟行为的评估。你可以通过以下几种方式编写测试输入向量:

  • 图形化的,例如使用信号编辑器

  • 从数据集,如使用Excel®或垫文件

  • 根据时间或逻辑条件进行的一系列测试步骤

您可以定义评估,以指示功能需求何时没有得到满足。这些评估遵循您的设计需求或测试计划。您可以用几种方式定义评估:

  • 使用结构化的评估语言。结构化语言帮助您评估复杂的计时行为,例如必须在某个时间框架内发生的两个事件。它还可以帮助您识别需求之间的冲突。

  • 验证语句在一个测试评估测试序列块。有关如何在模型中设置块的信息,请参见使用verify语句评估模型仿真

  • 模型验证块库中的块。

  • 在模拟数据输出上设置公差。公差定义了基线数据或其他模拟的可接受增量。

  • 使用MATLAB编写的自定义标准脚本。

您可以在Simulink test中使用现有的测试数据和测试模型。例如,如果您有来自现场测试的数据,您可以通过将数据映射到您的测试用例来测试您的模型或代码。如果您有使用模型验证块的现有测试模型,您可以在测试管理器中组织那些测试并管理结果。

测试生成

使用仿真软件设计校验™,您可以生成实现测试目标或增加模型或代码覆盖率的测试用例。您可以从测试管理器,或从仿真软件设计验证器接口。无论哪种方式,您都可以将生成的测试用例与您的原始测试一起包含,以创建一个实现完全覆盖的测试文件。您还可以将新的测试用例链接到附加的需求。

测试执行

您可以从测试管理器控制测试执行模式。例如,你可以:

  • 在多个版本的MATLAB中运行测试。多版本测试允许您在产品版本中执行模型时利用最近的测试数据。

  • 连续运行测试以验证生成的代码。您可以在模型、SIL和PIL模式中运行相同的测试,并比较数值结果以演示代码-模型等价性。

  • 运行HIL测试以验证运行在实时硬件上的系统实时仿真软件,包括验证模型中的语句,帮助您确定是否满足了功能需求。

  • 通过使用“并行计算工具箱”™或以并行方式运行测试,可减少测试时间MATLAB并行服务器™,或者运行整个测试文件的筛选子集。

报告

在报告您的测试结果时,您可以设置与您的开发环境相匹配的报告属性。例如,报告可以依赖于测试是否通过或失败,并且报告可以包括数据图、覆盖结果,以及链接到您的测试用例的需求。您可以创建和存储与报告一起呈现的自定义MATLAB图。报告选项与您的测试文件保持一致,因此它们在您每次执行测试时运行。

一个MATLAB报告生成器™许可证增加了额外的定制选项,包括:

  • 创建报告微软®或PDF格式模板

  • 使用聚合个别结果的自定义对象组装报告

相关的话题

Baidu
map