主要内容

本页采用了机器翻译。点击此处可查看最新英文版本。

cvhtml

R2026a

从模型覆盖率对象创建 HTML 覆盖率报告

描述

cvhtml(file,cvdo) 使用文件名 file 创建 cvdata 或 cv.cvdatagroup 对象 cvdo 中的覆盖率结果的 HTML 报告。调用 cvhtml 时,模型必须处于打开状态。

cvhtml(file,cvdo1,...,cvdoN) 从多个 cvdata 对象创建合并报告。每个对象的结果显示在 HTML 报告的不同列中。每个 cvdata 对象必须对应于相同的根模型或子系统。

cvhtml(file,cvdo1,...,cvdoN,options) 使用 options 指定的报告选项从多个 cvdata 对象创建合并报告。

cvhtml(file,cvdo,simMode) 为具有仿真模式 simMode 的模型创建 HTML 报告。

reportInfo = cvhtml(_) 创建输出结构体数组 reportInfo,其中包含每个报告的文件名和路径。

注意

如果您使用 cv.cvdatagroup 对象作为 cvdo 参量为模型引用层次结构创建覆盖率报告,则 cvhtml 会为每个引用的模型创建一个报告。cvhtml 会在每个子报告的前面加上指定的文件名 file。

示例

全部折叠

此示例显示如何以编程方式创建覆盖率报告。

加载模型。

modelName = "slvnvdemo_cv_small_controller";
load_system(modelName);

slvnvdemo_cv_small_controller 模型已配置为收集覆盖率。为了能在 MATLAB® 工作区中访问覆盖率数据,需要使用 Simulink.SimulationInput 对象启用 CovSaveSingleToWorkspaceVar 参数。

simIn = Simulink.SimulationInput(modelName);
simIn = setModelParameter(simIn,"CovSaveSingleToWorkspaceVar","on");

使用 simIn 对模型进行仿真,并从 Simulink.SimulationOutput 对象中提取覆盖率数据。

simOut = sim(simIn);
covData = simOut.covdata;

使用 cvhtml 创建覆盖率报告。

rptFileName = "cv_small_controller_coverage.html";
reportInfo = cvhtml(rptFileName,covData)
reportInfo = 

  struct with fields:

          fileName: "cv_small_controller_coverage.html"
              path: "/tmp/Bdoc26a_3233028_3129086/tpcb9c9b67/slcoverage-ex75072404"
    cvdataUniqueId: "263417bd-40b7-4b87-8ffe-5e2e32708775"

可选的 reportInfo 输出参量显示覆盖率报告的文件名和路径名,以及用于生成该报告的 cvdata 对象的唯一 ID。

输入参数

全部折叠

覆盖率数据,指定为 cvdata 对象或 cv.cvdatagroup 对象。

数据类型: cvdata | cv.cvdatagroup

生成报告的文件名,指定为字符数组或字符串数组。指定绝对路径或相对路径和文件名。

报告选项,指定为字符向量或字符串,由表中的选项、等号和 0 或 1 组成。

  • 要启用选项,请使用 1。

示例: "-hTR=1"

  • 要禁用选项,请使用 0。

示例: "-sRT=0"

  • 要指定多个报告选项,请在单个字符向量或字符串中列出这些选项,并用逗号或空格分隔。

示例: "-hTR=1 -bRG=0 -scm=0"

选项描述默认值

-sRT

显示报告

on

-sVT

Web 视图模式

off

-aTS

在模型摘要中包含每个测试

on

-agT

在覆盖率报告中显示聚合的测试信息

on

-bRG

在模型摘要中生成条形图

on

-bTC

使用双色条形图

on

-hTR

在模型摘要中显示命中/计数比率

off

-xEM

从报告中排除执行度量详细信息

off

-nFC

从报告中排除全覆盖模型对象

off

-nFD

从报告中排除全覆盖模型对象详细信息

off

-scm

在摘要中包括圈复杂度数值

on

-bcm

在模块细节中包括圈复杂度数值

on

-xEv

从报告中滤除 Stateflow® 事件

off

-req

在覆盖率报告中包括链接的需求

on

数据类型: char | string

仿真模式,指定为以下值之一:

对象设定描述

"Normal"

普通仿真模式下的模型

"SIL" (or "PIL")

软件在环 (SIL) 或处理器在环 (PIL) 仿真模式下的模型

"ModelRefSIL" (or "ModelRefPIL")

SIL 或 PIL 仿真模式下的模型引用

"ModelRefTopSIL" (or "ModelRefTopPIL")

在 SIL 或 PIL 仿真模式下将代码接口设置为顶层模型的模型引用

输出参量

全部折叠

覆盖率报告信息,以 1×N 结构体数组的形式返回,其中 N 是覆盖率报告的数量。结构体数组包含这些字段。

覆盖率报告文件名,以字符串形式返回。

示例: "coverageReport.html"

数据类型: string

覆盖率报告文件路径,以字符串形式返回。

示例: "C:\Documents\CovReports"

数据类型: string

覆盖率数据唯一标识符,以字符串形式返回。cvdataUniqueId 是 cvdata 对象的 uniqueId 属性。

示例: "80ffeedf-67f1-4361-9d20-265672f1f5c6"

数据类型: string

数据类型: struct

备选方法

在对模型进行仿真时,使用 Simulink® 编辑器生成覆盖率报告:

  1. 打开要为其生成模型覆盖率报告的模型。

  2. 在 Simulink 编辑器中,在建模选项卡中选择模型设置。

  3. 在“配置参数”对话框的覆盖率窗格中,选择启用覆盖率分析。

  4. 点击确定。

  5. 点击运行(覆盖率) 以对模型进行仿真。仿真完成后,覆盖率报告会在覆盖率详细信息窗格中打开。

版本历史记录

在 R2006a 之前推出

全部展开