根据需求测试模型并报告结果
建立需求和测试用例之间的可追溯性有助于解释测试结果,并了解模型验证需求的程度。您可以通过将需求链接到对其进行验证的元素(例如测试管理器中的测试用例、Test Sequence 模块中的 verify 语句或模型验证模块)来建立可追溯性。当您运行测试时,通过/失败摘要会出现在您的需求集中。
此示例说明如何根据模型来测试巡航控制系统的需求。首先需要确定需求集、模型和测试用例。您将在测试和安全需求之间建立可追溯性,运行测试,总结验证状态,并报告结果。

在此示例中,您将测试需求集中的两个需求:
当发生制动事件时,巡航控制系统从接合状态转换为分离状态
当车辆当前速度超出 20 公里/小时至 90 公里/小时的范围时,巡航控制系统从接合状态转换为分离状态
显示需求
打开示例工程。
openExample("shared_vnv/CruiseControlVerificationProjectExample"); pr = openProject("SimulinkVerificationCruise");
打开
simulinkCruiseAddReqExample模型。open_system("simulinkCruiseAddReqExample");显示需求。点击模型画布右下角的
图标,然后选择需求。需求窗格将会打开。显示验证和实现状态。右键点击需求集,然后选择验证状态和实现状态。

将需求链接到测试
将需求链接到测试用例。
在 MATLAB® 中,在工程窗格的
tests文件夹中,打开 Simulink® Test™ 文件slReqTests.mldatx。该测试文件在测试管理器中打开。在模型中,点击需求
S 3.1。在测试管理器中,选择测试用例
Safety Tests。在右窗格的需求部分中,点击添加 > 链接到所选需求。在模型的属性检查器中,被验证部分指示与Safety Tests的链接。在需求窗格中,已验证列中的黄色条指示尚未执行链接的测试。
重复上一步,为需求
S 3.4添加链接。
运行测试
测试用例使用名为 SafetyTest_Harness1 的测试框架。要打开测试框架,请点击模型画布右下角的
图标,然后选择 SafetyTest_Harness1。在测试框架中,打开 Test Sequence 模块。测试序列会设置输入条件并检查模型行为:
BrakeTest序列启动巡航控制,然后施加制动。它包含以下verify语句:verify(engaged == false,... 'verify:brake',... 'system must disengage when brake applied')
LimitTest序列启动巡航控制,然后逐渐提高车辆速度,直到超过上限。它包含以下verify语句:verify(engaged == false,... 'verify:limit',... 'system must disengage when limit exceeded')
要运行测试用例,请返回测试管理器,然后点击运行。
测试完成后,查看结果。在测试管理器的结果和工件窗格中,展开测试用例并选择验证语句。然后,在数据检查器选项卡的检查选项卡中,选择
verify语句。下图提供了每个verify语句的详细结果,并表明两个评估均通过。
返回模型,然后点击需求窗格中的“刷新”按钮以刷新需求。已验证列中的绿色条指示测试用例成功验证了需求
S 3.1和S 3.4。
报告结果
使用自定义 Microsoft® Word 模板创建报告。
在测试管理器的结果和工件窗格中,右键点击测试用例名称。选择创建报告。
在“创建测试结果报告”对话框中,设置以下选项:
标题 -
SafetyTest搜索结果 -
All Tests文件格式 -
DOCX
输入文件名并选择报告的位置。
将模板文件设置为
documents工程文件夹中的ReportTemplate.dotx文件。点击创建。
审查报告。
测试用例需求部分指定关联的需求。
验证结果部分包含测试中两项评估的详细信息以及指向仿真输出的链接。
另请参阅
主题
- 链接至需求
- 验证模型中的需求链接 (Requirements Toolbox)
- 自定义模型需求可追溯性报告 (Requirements Toolbox)