slcoverage。BlockSelector类
包:slcoverage
为覆盖过滤器选择块
创建
输入参数
类型
- - - - - -块选择器类型
slcoverage。BlockSelectorType
价值
要选择的模型元素类型,指定为以下值之一:
slcoverage.BlockSelectorType.BlockInstance
-由MATLAB函数块调用的块实例或外部MATLAB函数。slcoverage.BlockSelectorType.BlockType
—指定块类型的所有块。slcoverage.BlockSelectorType.Chart
—状态流®图表。slcoverage.BlockSelectorType.MaskType
—使用指定掩码类型的块。slcoverage.BlockSelectorType.State
—statflow状态。slcoverage.BlockSelectorType.StateAllContent
-状态流状态及其内容。slcoverage.BlockSelectorType.StateflowFunction
—Stateflow函数。slcoverage.BlockSelectorType.Subsystem
—子系统块。slcoverage.BlockSelectorType.SubsystemAllContent
—子系统及其内容。slcoverage.BlockSelectorType.TemporalEvent
-状态流时间事件。slcoverage.BlockSelectorType.Transition
—状态流转换。
例子:slcoverage.BlockSelectorType.Transition
元素
- - - - - -要选择的模型元素
属性名|处理|金宝app®ID
要选择的模型元素,指定为元素的属性名、其句柄或其Simulink标识符。金宝app为选择实例的选择器类型使用句柄或ID。使用属性名,例如块的值“BlockType”
属性,以选择多个模型元素。
例子:“slcoverage_lct_bus: 18”
,“RelationalOperator”
属性:
- SetAccess
-
受保护的
数据类型:字符
|字符串
|处理
|整数
属性
ConstructorCode
- - - - - -用于创建此选择器对象的代码
字符数组
用于创建此选择器对象的代码,作为字符向量返回。
属性:
GetAccess |
公共
|
SetAccess |
受保护的
|
描述
- - - - - -选择器的描述
特征向量
选择器的描述,作为字符向量返回。金宝app仿真软件覆盖™基于选择器创建描述。
属性:
GetAccess |
公共
|
SetAccess |
受保护的
|
Id
- - - - - -模型元素标识符
金宝app动态仿真模块ID(默认)|财产|处理
模型元素标识符,指定为元素的属性名、元素的句柄或元素的Simulink标识符。金宝app为选择实例的选择器类型使用句柄或ID。属性的值等属性名“BlockType”
属性,以选择多个模型元素。
属性
SetAccess |
受保护的
|
数据类型:字符
|字符串
|处理
|整数
类型
- - - - - -块选择器类型
slcoverage。BlockSelectorType
价值
选择器类型,作为其中之一返回slcoverage。BlockSelectorType
价值观:
slcoverage.BlockSelectorType.BlockInstance
-由MATLAB函数块调用的块实例或外部MATLAB函数。slcoverage.BlockSelectorType.BlockType
—指定块类型的所有块。slcoverage.BlockSelectorType.Chart
—状态流程图。slcoverage.BlockSelectorType.MaskType
—使用指定掩码类型的块。slcoverage.BlockSelectorType.State
—statflow状态。slcoverage.BlockSelectorType.StateAllContent
-状态流状态及其内容。slcoverage.BlockSelectorType.StateflowFunction
—Stateflow函数。slcoverage.BlockSelectorType.Subsystem
—子系统块。slcoverage.BlockSelectorType.SubsystemAllContent
—子系统及其内容。slcoverage.BlockSelectorType.TemporalEvent
-状态流时间事件。slcoverage.BlockSelectorType.Transition
—状态流转换。
属性:
GetAccess |
公共
|
SetAccess |
受保护的
|
方法
公共方法
allSelectors |
模型或代码元素的选择器 |
例子
向过滤器中添加块选择器规则
选择多个要添加规则的块和要添加规则的块的实例。生成的过滤器有两个规则。您可以使用筛选器模拟代码覆盖率的模型,以查看效果。
打开模型。指定覆盖设置并打开覆盖记录。
modelName =“slcoverage_lct_bus”;open_system (modelName);set_param (modelName“CovMetricStructuralLevel”,“MCDC”,“RecordCoverage”,“上”);
属性的块类型相同的块上GE输入
块添加筛选规则。
类型= get_param('slcoverage_lct_bus/slCounter/upper GE input',“BlockType”);bl = slcoverage.BlockSelector(slcoverage.BlockSelectorType.BlockType,type);
创建筛选器对象,基于选择器创建规则,并将规则添加到筛选器。
filt = slcoverage.Filter;Rule = slcoverage。FilterRule(提单,测试了其他地方的, slcoverage.FilterMode.Exclude);filt.addRule(规则);
选择一个块实例并将该块实例的规则添加到筛选器中。的默认筛选模式证明
.
id = 金宝appSimulink.ID.getSID(“slcoverage_lct_bus / slCounter /和“);bl = slcover . blockselector (slcover . blockselectortype . blockinstance,id);Rule = slcoverage。FilterRule(提单,“边缘案例”);filt.addRule(规则);
将过滤器保存为blfilter
.模拟代码覆盖率的模型。将筛选器文件作为值添加到过滤器
生成的cvdata
对象。然后生成覆盖率报告。
filt.save (“blfilter”);csim = cvsim(modelName);csim。过滤器=“blfilter”;cvhtml (“浸”, csim);
检查HTML报告以查看有关您为其添加规则的块的信息。
获取一个MATLAB函数的选择器
方法获取MATLAB®函数的选择器slcoverage。BlockSelector
类。
示例模型slvnvdemo_eml_model_coverage_demo
包含一系列MATLAB函数块。其中一个MATLAB函数块调用外部函数slcoverageExternalFile.m
.
首先加载模型并生成覆盖结果。
modelName =“slvnvdemo_eml_model_coverage_demo”;load_system(modelName) covData = cvsim(modelName);
由于模型使用外部函数,覆盖结果将在cv.cvdatagroup
对象。使用cv.cvdatagroup.get
类的方法来提取cvdata
对象的结果slcoverageExternalFile
函数。
函数cov = get(covData,“slcoverageExternalFile”);
要从覆盖率报告中排除整个功能,请使用排除过滤器。首先,使用slcoverage。BlockSelector
类为外部MATLAB函数创建选择器slcoverageExternalFile.m
.正确的BlockSelectorType
用于此的枚举BlockInstance
.
sel = slcoverage.BlockSelector(slcoverage.BlockSelectorType.BlockInstance)“slcoverageExternalFile.m”);
创建一个空的slcoverage。过滤器
对象。
filt = slcoverage.Filter;
属性创建排除筛选规则slcoverage。FilterRule
类。的选择器、筛选函数的基本原理和筛选器类型slcoverage.FilterMode.Exclude
.
Rule = slcoverage。FilterRule(选取,“排除函数演示”, slcoverage.FilterMode.Exclude);
将筛选规则添加到筛选对象,命名筛选器,并保存到文件中。
addRule (filt、规则);setFilterName (filt“mfileFilter”);setFilterDescription (filt外部m文件的演示排除过滤器);保存(filt,“externalFileFilter”)
将筛选器文件应用到cvdata对象,该对象包含函数的覆盖结果slcoverageExternalFile.m
.
functionCov。过滤器=“externalFileFilter”;
创建覆盖率报告并观察功能slcoverageExternalFile
现在在摘要中没有报告覆盖率数据,如果单击函数名打开函数报告,将看到slcoverageExternalFile
列在从覆盖率分析中过滤的对象.
cvhtml (“covReport”covData)
版本历史
Matlabコマンド
次のmatlabコマンドに対応するリンクがクリックされました。
コマンドをmatlabコマンドウィンドウに入力して実行してください。Webブラウザ,はMATLABコマンドをサポ,トしていません。
您也可以从以下列表中选择一个网站:
如何获得最佳的网站性能
选择中国站点(中文或英文)以获得最佳站点性能。其他MathWorks国家站点没有针对您所在位置的访问进行优化。