Simulink Test
开发、管理和执行基于仿真的测试
Simulink Test™ 提供了一些工具,用于为模型、生成的代码和仿真的硬件或物理 硬件编写、管理和执行基于仿真的系统化测试。其中包含仿真、基准和等价测试 模板,让您能够使用软件在环 (SIL)、处理器在环 (PIL) 和实时硬件在环 (HIL) 模式 执行功能测试、单元测试、回归测试和背对背测试。
利用 Simulink Test 可以创建非介入式测试框架,隔离待测试组件。 可以使用基 于文本的语言定义基于需求的评估,并采用各种格式(包括 Microsoft® Excel®) 指定测试输入、预期输出和容差。Simulink Test 包括 Test Sequence 模块和测试 管理器,前者可用来构造复杂的测试序列和评估,后者用于管理和执行测 试。Observer 模块让您能够访问设计中的任何信号,而无需更改模型或模型接 口。可以组织大型测试集,并行执行或在持续集成系统上执行。
您可以将测试追溯到需求(使用 Simulink Requirements™),利用 Simulink Coverage™ 生成包含测试覆盖率信息的报告。
通过 IEC Certification Kit(for ISO 26262 and IEC 61508)和 DO Qualification Kit(for DO-178 and DO-254),可提供对行业标准的支持。
开始:
回归、背对背和基于需求的测试模板
仿真测试验证仿真是否无错运行,包括在模型中定义的评估。基准测试 将仿真输出与定义的数据集进行比较。等价测试比较两个仿真的仿真输 出。
使用多个源定义测试数据
可以使用 MAT 文件或 Excel 电子表格指定测试方案的输入数据、预期 输出和容差。您可以:
- 使用 Signal Editor 模块以图形方式编写输入数据。
- 使用 Test Sequence 模块定义程序化测试输入序列。
- 使用 Simulink Design Verifier™ 自动生成测试输入。
使用测试框架隔离要测试的组件
测试框架提供了隔离 Simulink® 模型或模型组件的集成仿真环境。它将 测试环境与设计分离开来。您可以在模型或模型组件上运行特定于测试 的仿真,同时对模型和测试框架之间的设计变更进行同步。
针对需求验证的时间评估
设计需求可能包括难以在测试中形式化的时序依赖逻辑。您可以采用自 然语言格式编写具有精确语义的时间评估的测试,运用条件、事件、信 号值和延迟,精确地对复杂的时间依赖行为进行建模。
编写测试序列和评估
可以使用 MATLAB® 语言特征的一个子集,包括时间运算符、信号发生 器和条件结构,编写具有基于步骤的时间测试序列的测试,并评估仿真 结果。
在不更改模型的情况下观测信号
使用观测器,您可以调试和测试 Simulink 信号,而无需添加仅用于测试 的其他端口、模块、连接或接口。您可以创建单独的验证模型来验证您 的系统设计。
支持所有仿真模式
使用 Simulink Real-Time™,在正常仿真模式、加速器模式、快速加速 器模式、软件在环 (SIL) 模式、处理器在环 (PIL) 模式或实时模式下执行 测试。
多版本支持
您可以使用从 R2011b 开始的多个 MATLAB 版本运行测试用例,以便在 其生产版本中执行您的模型,但可以利用 Simulink Test 的最新验证功 能。
测量模型和代码覆盖率
使用 Simulink Coverage™,可以收集决策、条件、修改的条件/决策覆盖率 (MC/DC) 和关系边界覆盖率等覆盖率指标。利用测试管理器中的 覆盖率结果,可通过使用 Simulink Design Verifier 来生成缺失覆盖率的测试用例。
可视化测试结果、调试错误并更新测试
Simulink Test 以图形方式识别不符合容差规格的信号,并确定合格/不 合格结果。您可以检查仿真输出和记录的信号以及定义的预期输出,如 果偏差在可接受范围内,则更新基准数据。
管理和归档测试结果
Simulink Test 显示已执行测试的摘要和详细信息。每个测试结果的摘要 页面显示仿真输出、基准或等价比较以及测试的结果:合格、不合格或 未测试。 要与其他人分享结果,您可以将测试结果导出到文件中,可供 日后在测试管理器中查阅。
生成报告
要将结果归档到文档,您可以生成报告,报告中可包含测试结果、测试 摘要和用于测试比较的任何标准。使用 Simulink Report Generator™ 可以采用 HTML、PDF 和 DOCX 格式生成标准报告,也可以自定义报 告格式。
测试脚本和批处理工作流程
可以单个或批量地执行测试,以自动执行测试并建立标准化测试环境。 可以通过编程方式创建测试用例,指定测试用例标准,运行测试,并生 成结果。
持续集成
可以使用 MATLAB Unit Test 运行模型测试,允许您在持续集成 (CI) 系 统(如 Jenkins™)内集成。您可以与 MATLAB Unit Test 脚本、函数和 类一起执行模型测试。
通过并行执行实现扩展
测试大型或复杂 Simulink 模型时,您可以并行运行测试以加快执行并更快获得结果。如果您有 Parallel Computing Toolbox™,则可以在本地计算机上并行执行测试。借助 MATLAB Parallel Server™,您可以在远程集群上(如云端)并行执行测试。
在 Test Sequence 模块中处理多种场景
在一个 Test Sequence 模块中创建和管理多种测试场景
在远程集群上执行并行测试
在集群上或在云端并行运行测试,从而实现大规模测试(需要 MATLAB Parallel Server)
使用Model Slicer 调试测试故障
在基准测试中高亮显示与失败信号相关的模型组件以调试测试故障
多版本等效性测试
比较在不同 MATLAB 版本上的仿真结果
编写基于 MATLAB 的 Simulink 测试
在 MATLAB 测试文件中为 Simulink 模型编写基线测试和等效性测试
可重用库子系统 SIL 测试
验证为库子系统生成的代码
[20a] 仿真后的覆盖率工作流支持
在不重新运行仿真的情况下通过测试管理器使用和创建覆盖率筛选器
关于这些特性和相应函数的详细信息,请参阅 发行说明。