verify
评估逻辑表达式并自动记录结果
描述
verify(
评估标量逻辑 expression
)expression
到 true
或 false
。
verify(
返回失败的 expression
,errorMessage
)verify
语句的指定错误消息。如果您在测试管理器中运行测试,则错误消息将出现在仿真日志中。如果在测试管理器之外运行测试,则消息会出现在诊断查看器中。errorMessage
是一个字符数组,您可以使用 sprintf
来格式化它。但是,您不能在 Stateflow® 图中的字符串或字符数组中使用 sprintf
格式。
注意
在实时环境中,verify
语句失败不会产生警告。但是,如果您在测试管理器中运行实时测试用例,则失败将显示在测试用例结果的验证语句部分中。您还可以使用 getVerifyRuns
访问有关 verify
运行的信息
verify(
使用 expression
,identifier
,errorMessage
)identifier
作为测试结果的标签。identifier
在测试管理器中用作信号标签。如果在测试管理器之外运行测试,则标签会出现在仿真数据检查器中,如果失败,则会出现在诊断查看器中。identifier
是一个字符数组,具有至少两个以冒号分隔的 MATLAB® 标识符。
示例
提示
您可以在Test Sequence和 Test Assessment 模块以及 Stateflow 图中使用
verify
语句。使用图需要 Stateflow 许可证。图中的verify
语句在与 Test Sequence 模块相同的位置、执行模式和相同的代码生成目标中受支持。您不能在以下情况下使用
verify
语句:使用连续时间更新的 Test Sequence 模块。Test Sequence 模块数据可能取决于求解器步进时间等因素。连续时间更新可能会导致模块数据和
verify
语句更新时间出现差异,从而导致意外的verify
语句结果。如果您的模型使用连续时间,并且您在 Test Sequence 或 Test Assessment 模块中使用verify
语句,请考虑明确设置离散模块采样时间。Moore、Mealy、离散事件或连续图
使用 C 作为动作语言的图
在图中绑定操作
图中的转移或条件操作
MATLAB 函数、图形函数或图中的真值表
MATLAB 函数或 Truth Table 模块
快速加速器模式仿真
除 Simulink® Real-Time™ 和 HDL Verifier™ 之外的代码生成目标
独立的 Stateflow 图
如果您使用并行测试执行来运行测试,那么您就无法使用测试管理器中的在模型中突出显示按钮来获取
verify
结果。您不能在 When 分解中在
when
之后立即使用verify
作为条件,因为verify
语句不会产生输出。但是,您可以使用verify
语句作为 When 分解步骤中的操作。参见 使用 When 分解评估模型。在
verify
语句中比较浮点数据时,请考虑与浮点数相关的精度限制。如果需要使用浮点数据,请为验证定义一个容差。例如,不要验证verify(x == 5)
,而是验证x
,容差为 0.001:有关更多信息,请参阅 浮点数。verify(abs(x-5) < 0.001)
版本历史记录
在 R2016a 中推出