导入等效性测试的测试用例
您可以使用 Embedded Coder® 中的 SIL/PIL 管理器应用程序将测试用例导出到测试管理器。通过使用该应用程序导出软件在环(SIL) 或处理器在环(PIL)测试用例,您无需为背靠背测试编写复杂的测试脚本。
注意
您需要同时拥有 Simulink® Test™ 和 Embedded Coder 才能使用此功能。
在自动验证模式下,使用 SIL/PIL 管理器应用程序中的导出到测试管理器会导出一个包含两个仿真的测试用例,每个仿真都采用不同的仿真模式。对于背靠背测试,通常使用普通模式和 SIL 模式或普通模式和 PIL 模式。从应用程序导出时,测试管理器将在测试浏览器窗格中打开并显示新的等效性测试用例。如果导出到新的测试文件,测试浏览器将打开一个新的测试文件和该测试用例的新测试套件。测试用例包括每个仿真的一个面板(仿真 1 和 仿真 2)。有关如何使用应用程序导出测试用例的信息,请参阅SIL/PIL 管理器 (Embedded Coder) 和 SIL/PIL Manager Verification Workflow (Embedded Coder)。
测试用例设置
SIL/PIL 管理器应用程序中的在测系统决定测试管理器中测试用例仿真的设置。这些针对每种在测系统类型的设置都用于导出包含 SIL 模式仿真的测试用例。对于包含 PIL 模式仿真的测试,每种在测系统类型的设置都是相同的。
顶层模型
当在测系统为顶层模型时,导出的测试用例会测试整个模型。测试管理器中的测试框架字段为空白。
在导出测试用例之前,这些设置位于 SIL/PIL 管理器应用程序中。
在测系统 | 顶层模型 |
仿真模式 | 普通 |
SIL/PIL 模式 | 软件在环(SIL) |
导出测试用例后,这些设置位于仿真 1 的测试管理器中。
属性 | 环境 | 测试管理器中的位置 |
---|---|---|
模型 | 顶层模型 | 仿真 1 > 在测系统 |
仿真模式 | 普通 | 仿真 1 > 在测系统 > 仿真设置覆盖 |
使用普通模式覆盖 SIL/PIL 模式的模型模块 | 选定 要在普通模式下运行仿真,设置为 SIL/PIL 模式的模型模块将被覆盖。 | 仿真 1 > 在测系统 > 仿真设置覆盖 |
导出测试用例后,这些设置位于仿真 2 的测试管理器中。
属性 | 环境 | 测试管理器中的位置 |
---|---|---|
模型 | 顶层模型 | 仿真 2 > 在测系统 |
仿真模式 | 软件在环(SIL) | 仿真 2 > 在测系统 > 仿真设置覆盖 |
使用普通模式覆盖 SIL/PIL 模式的模型模块 | 未选中的 设置为 SIL 或 PIL 模式的模型模块分别在 SIL 或 PIL 模式下运行。 | 仿真 2 > 在测系统 > 仿真设置覆盖 |
Model SIL/PIL 模式下的模块
当在测系统 SIL/PIL 模式下的 Model 模块时,导出的测试用例为 SIL 或 PIL 仿真模式下的 Model 模块。测试管理器中的测试框架字段为空白。
在导出测试用例之前,这些设置位于 SIL/PIL 管理器应用程序中。
在测系统 | SIL/PIL 模式下的 Model 模块 |
顶层模型模式 | 普通 |
导出测试用例后,这些设置位于仿真 1 的测试管理器中。
属性 | 环境 | 测试管理器中的位置 |
---|---|---|
模型 | 顶层模型 | 仿真 1 > 在测系统 |
仿真模式 | 普通 | 仿真 1 > 在测系统 > 仿真设置覆盖 |
使用普通模式覆盖 SIL/PIL 模式的模型模块 | 选定 要在普通模式下运行仿真,设置为 SIL/PIL 模式的模型模块将被覆盖。 | 仿真 1 > 在测系统 > 仿真设置覆盖 |
导出测试用例后,这些设置位于仿真 2 的测试管理器中。
属性 | 环境 | 测试管理器中的位置 |
---|---|---|
模型 | 顶层模型 | 仿真 2 > 在测系统 |
仿真模式 | 普通 在测系统按照 SIL/PIL 管理器应用程序中设置的 SIL 或 PIL 模式运行。其他模块以普通模式运行。 | 仿真 2 > 在测系统 > 仿真设置覆盖 |
使用普通模式覆盖 SIL/PIL 模式的模型模块 | 未选中的 设置为 SIL 或 PIL 模式的模型模块分别在 SIL 或 PIL 模式下运行。 | 仿真 2 > 在测系统 > 仿真设置覆盖 |
Model 测试框架中的模块或可重用库子系统
当在测系统是测试框架中的 Model 模块或可重用库子系统时,导出的测试用例是 SIL 或 PIL 仿真模式下的该模块或子系统。使用测试框架中的 SIL/PIL 管理器应用程序。
在导出测试用例之前,这些设置位于 SIL/PIL 管理器应用程序中。
在测系统 | 测试框架中的 Model 模块或可重用库子系统的名称。此字段不可编辑,因为您无法将整个框架更改为 SIL/PIL 模式。 |
仿真模式 | 普通 |
SIL/PIL 模式 | 软件在环(SIL) |
导出测试用例后,这些设置位于仿真 1 的测试管理器中。
属性 | 环境 | 测试管理器中的位置 |
---|---|---|
模型 | Model 模块名称 | 仿真 1 > 在测系统 |
框架 | 框架名称 | 仿真 1 > 在测系统 > 测试框架 |
仿真模式 | 普通 | 仿真 1 > 在测系统 > 仿真设置覆盖 |
使用普通模式覆盖 SIL/PIL 模式的模型模块 | 选定 要在普通模式下运行仿真,设置为 SIL/PIL 模式的 Model 模块将被覆盖。 | 仿真 1 > 在测系统 > 仿真设置覆盖 |
导出测试用例后,这些设置位于仿真 2 的测试管理器中。
属性 | 环境 | 测试管理器中的位置 |
---|---|---|
模型 | Model 模块名称 | 仿真 2 > 在测系统 |
框架 | 框架名称 | 仿真 2 > 在测系统 > 测试框架 |
仿真模式 | 软件在环(SIL) | 仿真 2 > 在测系统 > 仿真设置覆盖 |
使用普通模式覆盖 SIL/PIL 模式的模型模块 | 未选中的 设置为 SIL 或 PIL 模式的 Model 模块分别在 SIL 或 PIL 模式下运行。 | 仿真 2 > 在测系统 > 仿真设置覆盖 |
使用 SIL/PIL 管理器应用程序连续测试模型
此示例展示如何使用从 Embedded Coder SIL/PIL Manager 应用程序导出的测试用例执行背靠背测试。测试用例比较了在普通模式和软件在环(SIL)模式下仿真的模型。
打开
TopModelCode
模型。在命令行中输入:openExample('simulinkcoder/FilePackagingModelsCodeAndDataExample', ... 'supportingFile', 'TopModelCode');
注意
步骤 2 到 4 专门适用于此
TopModelCode
模型。其他型号可能不需要这些步骤。对于此模型,点击“仿真”选项卡中的“信号表”。为 CounterA、CounterB 和 CounterC 信号选择测试点和记录数据。
在模型中单击鼠标右键,然后选择“模型配置参数”。在配置参数对话框中,
在数据导入/导出中,将格式设置为数据集。
在代码生成 > 接口中,选择为以下项生成 C API 部分中的信号。
点击确定。
右键单击 Model 模块并选择作为顶层模型打开。在配置参数对话框中,设置与步骤 3 相同的项目。
展开模型窗口中的应用程序选项卡,然后点击代码验证、确认和测试下的 SIL/PIL 管理器。
在 SIL/PIL 管理器工具条中,如果尚未选择,请选择
自动验证
在测系统 — 顶层模型
仿真模式 — 普通
SIL/PIL 模式 — 软件在环(SIL)
要导出测试用例,请展开比较运行并点击导出到测试管理器。
在导出 SIL/PIL 测试用例对话框中,使用默认值并点击确定。测试管理器打开。
在测试管理器中,要查看导入的测试用例和设置,请在测试浏览器中展开
TopModelCode_TestFile
和SIL/PIL Test Suite
。选择
SIL/PIL Equivalence
测试用例。要查看仿真模式的设置,请展开仿真 1 和仿真 2 部分。扩展的仿真 1 部分是打开等效性准则部分并点击捕获。该模型进行仿真,并且该部分列出了测试用例中需要比较的信号。
单击运行运行测试用例。
在测试管理器中,结果和工件面板显示通过/失败结果。代码生成报告在单独的窗口中打开。
选择一个或多个信号来绘制结果。
该图显示两次仿真的输出相同。
相关主题
- SIL/PIL 管理器 (Embedded Coder)
- SIL/PIL Manager Verification Workflow (Embedded Coder)
- Code Verification Through Software-in-the-Loop and Processor-in-the-Loop Execution (Embedded Coder)