Main Content

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

sldv.test

Stateflow 图表和 MATLAB 功能模块的测试目标函数

说明

示例

sldv.test(expr) 指定在生成测试时 expr 为真。对 expr 使用任何有效的布尔表达式。

除了评估 expr 的任何间接副作用外,此函数没有输出,并且对其父函数也没有影响。如果从 MATLAB® 命令行发出此功能,则该功能无效。

在代码中散布 sldv.test 测试目标或将目标分离到验证脚本中。

测试生成窗格中的测试目标选项适用于由sldv.test函数和Test Objective模块表示的测试目标。

示例

全部折叠

使用MATLAB Function模块添加测试目标和测试条件。

打开sldvdemo_cruise_control模型并将其保存为ex_sldvdemo_cruise_control。您可以使用以下命令打开模型:

openExample('sldv/CruiseControlTestGenerationExample',...
'supportingFile', 'sldvdemo_cruise_control')

speed 信号中删除 Test Condition模块。此示例没有使用 Test Condition模块,而是使用了 sldv.testsldv.condition

从用户定义函数库中,添加一个 MATLAB Function模块。

  • 模块命名为 tests

  • 打开模块并添加以下代码:

    function define_tests(speed, target)
    %#codegen
    
    sldv.condition(speed >= 0 && speed <= 100);
    sldv.test(speed > 60 && target > 40 && target < 50);
    sldv.test(speed < 20 && target > 50);
  • 保存模型并返回顶层模型。

  • 将该模块连接到speed模块和target模块的信号。

将更改保存到ex_sldvdemo_cruise_control模型。

要生成测试用例,请在“Design Verifier”选项卡上点击“生成测试”。

输入参数

全部折叠

测试的表达式,指定为布尔表达式。例如,x > 0

备选方法

您可以插入Test Objective模块,而不是使用sldv.test模型。要了解 Test Objective 模块和 sldv.test 之间的区别,请参阅 什么是测试用例生成?

版本历史记录

在 R2009b 中推出