主要内容

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

评估仿真并比较输出数据

功能测试需要评估仿真行为并将仿真输出与预期输出进行比较。例如,您可以:

  • 分析事件发生后一定时间区间内的信号行为。

  • 在仿真中比较两个变量。

  • 将时间序列数据与基线进行比较。

  • 在时间序列数据中查找峰值,并将峰值与模式进行比较。

本主题提供了概述,以帮助您针对特定应用程序编写评估。在主题中,您可以找到每个评估的更详细示例的链接。

您可以将评估纳入测试用例、模型或测试框架中。

  • 在测试用例中,您可以:

  • 在测试框架或模型中,您可以:

    • 使用 verify 语句在运行时验证逻辑条件,该语句为每个时间步返回 passfailuntested 结果。

    • 使用 assert 语句在发生故障时停止仿真。

    • 使用模型验证或 Simulink® Design Verifier™ 库中的模块。

将仿真数据与基线数据或其他仿真进行比较

基线准则是仿真数据与基线数据相比的容差。等效性准则是两组仿真数据的容差,每组数据来自不同的仿真。您可以设置数字、枚举或逻辑数据的容差。

使用绝对或相对容差设置数字容差。使用超前容差和滞后容差设置时间容差。对于数值数据,您可以指定绝对容差、相对容差、超前容差或滞后容差。对于枚举或逻辑数据,您可以指定超前或滞后容差。容差范围之外的结果失败。有关更多信息,请参阅设置信号容差

在测试管理器基线准则等效性准则部分指定基线数据和容差。结果出现在结果和工件窗格中。比较图显示数据和差异。

该图显示了基线准则的一个示例。基线准则为信号 output torquevehicle speed 设置了相对容差。

Baseline criteria table

使用自定义脚本对结果进行后处理

您可以使用自定义准则脚本,利用专门的函数来分析仿真数据。例如,您可以使用 Curve Fitting Toolbox™ 函数在时间序列数据中找到峰值。自定义准则脚本是在仿真后运行的 MATLAB® 代码。自定义准则脚本使用 MATLAB 单元测试框架。

在测试用例的测试管理器自定义准则部分中编写自定义准则脚本。自定义准则结果出现在结果和工件窗格中。结果显示为单独的 MATLAB 单元测试资格。有关更多信息,请参阅使用自定义脚本处理测试结果

这个简单的测试用例自定义准则验证 slope 的值是否大于 0。

% A simple custom criteria
test.verifyGreaterThan(slope,0,'slope must be greater than 0')

运行时评估

verify 语句

对于运行时评估,请在 Test AssessmentTest Sequence 模块中使用 verify 语句。verify 语句评估逻辑表达式并返回每个仿真时序步骤的通过、失败或未测试结果。verify 语句可以包括时序和条件语法。失败并不会停止仿真。

有关在模型中使用 verify 语句的信息,请参阅 通过 when 分解验证模型仿真verify.

assert 语句

verify 语句类似,assert 语句用于评估逻辑表达式,但如果测试条件为假,则仿真停止。为了使结果更容易解释,请添加可选消息。有关详细信息,请参阅 assert

模型验证模块

使用 Simulink Model Verification 库或 Simulink Design Verifier 库中的模块来评估模型或测试框架中的信号。每个模块的 passfailuntested 结果都会出现在测试管理器中。有关更多信息,请参阅使用仿真数据检查器检查模型验证结果

注意

所有模型验证库模块(包括 Assertion 模块)在 For Each 子系统中使用时都不会产生验证结果。改用带有 verify 语句的 Test Sequence 模块。

逻辑和时序评估

逻辑和时序评估评估时序属性,例如模型时序和记录数据的事件排序。仿真完成后,使用时序评估进行额外的系统验证。时序评估与测试管理器中的测试用例相关。使用逻辑和时序评估编辑器来编写时序评估。查看 使用时序评估来评估时序逻辑 以了解更多信息。

时序评估评价结果出现在结果和工件窗格中。使用表达式树详细调查结果。如果您拥有 Requirements Toolbox™ 许可证,您可以通过创建需求链接来建立需求和时序评估之间的可追溯性。查看 链接至需求 以了解更多信息。

另请参阅

主题