根据需求测试模型并报告结果
建立需求和测试用例之间的可追溯性有助于您解释测试结果并了解模型验证需求的程度。您可以通过将需求链接到验证它的元素来建立可追溯性,例如测试管理器中的测试用例、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
语句的详细结果。返回模型并点击需求窗格中的“刷新”按钮以刷新需求。已验证列中的绿色条表示测试用例成功验证了需求
S 3.1
和S 3.4
。
报告结果
使用自定义 Microsoft® Word 模板创建报告。
在测试管理器的结果和工件窗格中,右键点击测试用例名称。选择创建报告。
在创建测试结果报告对话框中,设置以下选项:
标题 -
SafetyTest
搜索结果 -
All Tests
文件格式 -
DOCX
输入文件名并选择报告的位置。
将模板文件设置为
ReportTemplate.dotx
工程文件夹中的文件documents
文件。点击创建。
审查报告。
测试用例需求部分指定了相关需求。
验证结果部分包含测试中两项评估的详细信息以及仿真输出的链接。
另请参阅
主题
- 链接至需求
- 验证模型中的需求链接 (Requirements Toolbox)
- 自定义模型需求可追溯性报告 (Requirements Toolbox)