指定覆盖率选项
在开始覆盖率分析之前,您需要指定几个覆盖率分析选项。在 App 选项卡上,点击覆盖率分析器。在覆盖率 选项卡上,选择设置。
覆盖率窗格
在配置参数对话框的覆盖率窗格中,设置仿真期间计算的覆盖率的选项。
启用覆盖率分析
在仿真期间收集指定的覆盖率结果并报告覆盖率。当您选择启用覆盖率分析时,以下部分将可用:
分析范围
指定软件收集并报告覆盖率数据的系统。选项包括:
您必须选择启用覆盖率分析来指定分析范围。
整个系统
默认情况下,生成整个系统的覆盖率数据。覆盖率结果包括顶层和所有支持的子系统和模型参考。
引用模型
收集您选择的引用模型和 Observer 模型的覆盖率。默认情况下,此设置会收集所有引用模型的覆盖率,其中 Model 模块的仿真模式为普通、软件在环(SIL) 或处理器在环(PIL),活动 Observer 模型的仿真模式为普通。
要指定 Simulink® Coverage™ 收集覆盖率数据的引用模型和 Observer 模型:
选择启用覆盖率分析。
对于分析范围,选择引用模型。
点击选择模型。
在选择覆盖率分析模型对话框中,选择要收集覆盖率的引用模型或 Observer 模型。您还可以选择顶层模型。
模型名称旁边的图标表示该引用模型的仿真模式。
如果您有多个引用相同模型且其仿真模式相同的 Model 模块,则选中该模型的复选框将选中该模型具有相同仿真模式的所有实例的复选框。
点击确定。
子系统
覆盖率分析在仿真中收集您选择的子系统的覆盖率。默认情况下,生成整个模型的覆盖率数据。要将覆盖率报告限制到特定子系统:
在配置参数对话框的覆盖率窗格中,选择启用覆盖率分析。
点击选择子系统。
在“子系统选择”对话框中,选择要启用覆盖率报告的子系统,然后点击确定。
包括在分析中
包括在分析中部分包含两个选项:
MATLAB® 文件可以覆盖率模型中 MATLAB 函数调用的任何外部函数。您可以在 MATLAB Function 模块或 Stateflow® 图中定义 MATLAB 函数。
要选择 MATLAB 文件的覆盖率选项,您必须选择启用覆盖率分析。
C/C++ S-Function 可以覆盖率模型中的 C/C++ S-Function 模块。报告了 S-Function 模块和这些模块中的 C/C++ 代码的覆盖率度量。有关更多信息,请参阅生成 S-Function 的覆盖率报告。
您必须选择启用覆盖率分析才能选择 S-Function 的覆盖率选项。
覆盖率度量
选择您希望工具执行的结构覆盖率级别和其他类型的测试用例覆盖率分析(请参阅 模型覆盖的类型)。Simulink Coverage 收集并报告您指定的子系统、模型和引用模型的覆盖率类型。
结构覆盖率级别按照测试用例覆盖率分析的严格程度依次列出:
模块执行 - 启用 执行覆盖率 (EC)
决策 - 启用 执行覆盖率 (EC) 和 决策覆盖率 (DC)
条件决策 - 启用 执行覆盖率 (EC)、决策覆盖率 (DC) 和 条件覆盖 (CC)
修正条件决策覆盖率(MCDC) - 启用 执行覆盖率 (EC)、决策覆盖率 (DC)、条件覆盖 (CC) 和 修正条件/决策覆盖率 (MCDC)
覆盖率度量还包括其他度量:
您必须选择启用覆盖率分析来选择覆盖率度量。
结果
在覆盖率配置参数的结果部分中,选择覆盖率结果的目的地。您必须在覆盖率窗格上选择启用覆盖率分析来设置结果选项。
将上次运行保存在工作区变量中 - 将最后一次仿真运行的结果保存在工作区中的
cvdata
对象中。在 cvdata 对象名称中指定工作区变量名称。cvdata 对象名称 - 保存上次仿真运行结果的工作区变量的名称。您必须选择将上次运行保存在工作区变量中来指定
cvdata
对象名称。随每次仿真递增变量名称(var1、var2...) - 将数字附加到每个新结果的工作区变量名称,以免覆盖先前的结果。您必须选择将上次运行保存在工作区变量中才能启用此选项。
自动保存数据文件名 - 保存覆盖率数据结果的文件的名称。默认名称为
$ModelName$_cvdata
。$ModelName$
是模型的名称。输出目录 - 保存覆盖率数据的文件夹。默认位置是当前文件夹中的
slcov_output/$ModelName$
。$ModelName$
是模型的名称。