顶层模型覆盖率报告
如果你模拟模型使用运行按钮,金宝app®覆盖™创建一个模型覆盖率报告命名为指定的模型
。模型的覆盖率报告也自动打开的报道的细节窗格。模型的覆盖率报告包含几个部分:model_name
_cov.html
访问sldemo_fuelsys
在MATLAB模型中,执行以下命令®命令窗口:
openExample (“ModelingAFaultTolerantFuelControlSystemExample”);
分析信息
模型部分包含基本信息分析信息分析:
覆盖率数据信息
模型信息
利用信息(如果你出现记录从一个报道金宝app仿真软件测试™利用)
仿真优化选项
覆盖选项
聚合测试
聚合测试部分出现,如果你:
记录汇总覆盖率结果通过至少两个测试用例金宝app仿真软件测试经理和生产聚合结果的覆盖率报告,或
产生一个覆盖报告Explorer覆盖率结果累积的结果。
如果你通过运行测试用例金宝app仿真软件测试经理,聚合测试部分的链接到相关的测试用例金宝app仿真软件测试经理。
如果你总测试用例结果通过结果探险家,汇总测试结果中的部分链接到相应的cvdata节点探险家。
对于每个运行聚合测试部分,有一个链接到相应的结果金宝app仿真软件测试经理或探险家的结果。
聚合单元测试
如果你利用记录覆盖一个或多个子系统,聚合测试列出每个单元测试运行,和描述部分显示了描述聚合的覆盖率数据。你可以看到和编辑这个描述要覆盖率结果Explorer和点击当前累积数据。
每个测试单元接收一个序数n被测试,每个测试单元接收一个序数米的风格U
n。米。
报道总结
报道总结有两个部分:
测试——每个测试用例的仿真启动和停止时间和任何设置命令前的模拟。每个测试用例包括任何测试用例的标题标签指定的使用
cvt
命令。本节只显示报表时不包含一个聚合测试部分。总结-总结的子系统的结果。看到详细的结果为一个特定的子系统,在总结分段,单击子系统名称。
每个请求的摘要部分包含一个列覆盖率度量,即使对指标不适用的模型或模型对象进行了分析。例如,在sldemo_fuelsys
如果你选择模型目标和约束覆盖率度量,得到列标题测试的目标,客观的证据,测试条件,证明假设,尽管模型不包含块金宝app仿真软件覆盖这些指标可以分析。
细节
细节部分报告覆盖率结果的详细模型。每个部分的详细报告总结的指标测试结果中的每个对象模型:
您还可以访问一个分段模型元素细节如下:
右键单击一个模型元素。金宝app
在上下文菜单中,选择报道>报告。
过滤对象
过滤对象列出所有的对象模型,从报道记录过滤,并为过滤这些对象指定的基本原理。如果过滤器规则指定特定类型的所有块被过滤,所有这些积木都列在这里。
在下图中,几个街区,子系统,过滤和转换。两个library-linked块,受保护的部门和保护division1过滤,因为他们阻止图书馆被过滤。
模型的细节
细节部分包含一个结果总结为模型作为一个整体,其次是一个元素的列表。点击模型元素名称查看其报道的结果。
下面的图形显示了部分细节sldemo_fuelsys
模型的例子。
子系统的细节
每个子系统的细节部分包含一个总结的测试覆盖率结果子系统和它所包含的子系统的列表。概述后跟部分街区,图表,和MATLAB函数,一个用于每一个对象,它包含一个决策点的子系统。
下面的图形显示了覆盖率结果为发动机的气体动力学子系统sldemo_fuelsys
模型的例子。
块的细节
下面的图形显示了覆盖率结果决定极大极小块的混合和燃烧发动机气体动力学子系统的子系统sldemo_fuelsys
模型的例子。
的发现链接元素第一次出现在第一个块的块的细节部分的模型层次结构不能达到100%的覆盖率。第一个发现链接元素有一个箭头连接块的细节部分的报告下一个块,不达到100%的覆盖率。
随后块实现100%的覆盖率没有链接块细节部分报告的前一个和后一个块没有达到100%的覆盖率。
图表细节
下面的图形显示了Stateflow报道结果®图表control_logic
在sldemo_fuelsys
模型的例子。
更多信息关于Stateflow图表和模型覆盖报告他们的对象,明白了模型覆盖报告Stateflow图表。
报道细节MATLAB功能和金宝app设计验证器功能
默认情况下,金宝app仿真软件覆盖记录覆盖所有MATLAB函数模型。MATLAB函数是在MATLAB函数块,Stateflow图表,或外部MATLAB文件。
请注意
一个详细的例子覆盖报告外部MATLAB文件,看看外部MATLAB文件覆盖报告。
记录金宝app仿真软件设计校验™覆盖sldv。*
函数调用MATLAB函数,任何金宝app仿真软件设计验证器块,选择目标和约束在报道面板的配置参数对话框。
下面的示例显示了一个MATLAB函数,报道的细节hFcnsInExternalEML
电话,四金宝app仿真软件设计验证器功能。在本例中,代码hFcnsInExternalEML
居住在一个外部文件。
这个示例还显示金宝app仿真软件设计验证器报道细节下面的功能:
sldv.assume
(金宝app仿真软件设计验证器)sldv.condition
(金宝app仿真软件设计验证器)sldv.prove
(金宝app仿真软件设计验证器)sldv.test
(金宝app仿真软件设计验证器)
覆盖率结果,达到100%的代码覆盖率是绿色的。代码,达到小于100%的覆盖率是红色的。
报道的hFcnsInExternalEML
函数和sldv。*
电话是:
第1行,函数声明
hFcnsInExternalEML
是绿色的,因为仿真执行函数至少一次。fcn
调用hFcnsInExternalEML
在模拟的11倍。4号线,
sldv.assume(u1 > u2)
因为,达到0%的覆盖率u1 > u2
没有评估为true。第5行,
sldv.condition(u1 = = 0)
因为,达到100%的覆盖率u1 = = 0
评估为true的至少一个时间步。6号线,
开关u1
达到25%的覆盖率,因为只有四个结果之一开关
语句(例0
)发生在模拟。第17行,
sldv.test(y>u1); sldv.test (y == 4)
达到50%的覆盖率。第一个sldv.test
达到100%的覆盖率,但是第二个sldv.test
达到0%的覆盖率。
覆盖MATLAB函数的更多信息,请参阅模型覆盖MATLAB函数。
有关报道的更多信息金宝app仿真软件设计验证器功能,请参阅目标和约束范围。
要求测试细节
如果你运行至少两个测试用例金宝app仿真软件测试与要求要求工具箱™,聚合的覆盖率报告细节模型元素之间的联系,测试用例,和有关要求。
的要求测试细节部分包括:
实现需求——需求与模型元素。
验证了测试——测试验证的要求。
相关的运行——这与每个相关验证测试运行。
例如如何跟踪报道结果需求的覆盖率报告,明白了跟踪报道结果的要求。
圈复杂度模型覆盖报告
你可以指定模型覆盖率报告包括圈复杂度的数字在两个地点报告:
摘要部分包含的圈复杂度的数字模型层次结构中的每个对象。为一个子系统或Stateflow图表,这个数字包括所有后代的圈复杂度的数字。
每个对象的细节部分所有单个对象的圈复杂度的数字列表。
决策分析
分析了决策表列出了可能的结果决定的次数,一个发生在每一个测试结果仿真。结果没有出现红色突出显示的表行。
下面的图形显示了决策分析表中的饱和块节流&歧管发动机气体动力学子系统的子系统sldemo_fuelsys
模型的例子。
显示和突出问题的块,点击顶部的块的名字包含块的部分决策的分析表。
条件分析
条件分析表列表出现的次数真假条件对应块的每个输入端口上。
MCDC分析
MCDC分析表列出了MCDC输入条件情况下由相应的块和程度报告测试用例覆盖条件的情况下。
MCDC分析表的每一行表示一个条件对于一个特定的块的输入。一个条件输入n
块的输入值的组合。输入n
被称为决定输入条件的情况。改变输入的值n
仅改变块的输出的值。
的MCDC分析表显示了一个条件表达式代表一个条件案件。一个条件表达式是一个字符串:
字符串中的一个字符的位置对应于输入端口号。
位置的字符代表输入的值。(
T
意味着真正的
;F
意味着假
)。黑体字符对应于输入的值决定。
例如,F
T
F
代表三个输入块的条件情况下,第二个输入是决定输入。
的决策/条件列指定决定输入的输入条件的情况。的真正的出列指定的决定导致块输出的输入值真正的
值条件。的真正的出条目使用一个条件表达式,例如,F
F
,来表达所有的输入的值,大胆的决定变量的值。
括号的表达式表明指定的输入组合没有发生在第一个(或)测试用例包含在这个报告。换句话说,测试用例没有覆盖相应的条件。的假了列指定块的决定输入值,导致输出一个错误的价值和价值是否发生在第一个(或)测试用例包含在报告中。
一些模型元素实现少MCDC报道根据MCDC定义中使用的分析。有关MCDC定义如何使用的更多信息在分析影响覆盖率结果,明白了改性条件和决策覆盖(MCDC)定义在模型的报道金宝app。
如果您选择治疗模型逻辑金宝app块短路在报道面板配置参数对话框,MCDC覆盖率分析不验证是否短路输入实际发生。使用一个MCDC分析表x
例如,在一个条件表达式(TFxxx
)来表示短路输入没有分析的工具。
如果禁用此功能和逻辑块不短路而收集模型覆盖,你可能无法达到100%的覆盖率块。
选择治疗模型逻辑金宝app块短路选择要MCDC覆盖率分析近似程度的报道你的测试用例实现为生成的代码(大多数高级语言短路逻辑表达式)。
累计覆盖
你记录连续报道的结果之后,可以访问、管理和总覆盖率结果在覆盖率结果探险家。默认情况下,每个模拟的结果保存并记录在报告中累计。
如果您选择显示累计进度报告在结果部分的配置参数,结果位于最右边区域的所有表累计覆盖报告反映累计值。报告是有组织的,这样你可以很容易地比较最近运行的额外覆盖与所有之前的报道在会话中运行。
累计覆盖报告包含的信息:
当前运行的覆盖率结果模拟刚刚完成。
δ-覆盖的比例添加到累计报道通过模拟刚刚完成。如果之前仿真的累计覆盖和当前覆盖非零,三角洲可能0如果新的报道不会增加累计覆盖。
累积,总覆盖率收集模型,包括,模拟刚刚完成。
在运行三个测试用例,总结报告显示多少额外的覆盖第三测试用例实现和累积覆盖率达到前两个测试用例。
的决策分析累计覆盖表包含三列表示当前运行的数据对决策结果,δ上一次运行以来,分别和累积数据。
条件分析表使用列标题# n T和# n F表示单个测试用例的结果。表的使用合计T和合计F累积的结果。您可以识别真假条件对应块的每个输入端口上为每个测试用例。
MCDC分析# n真正出和# n假了列显示的条件情况下为每个测试用例。的总出T和总出F列显示累积的结果。
请注意
你可以计算累计覆盖可重用的子系统和Stateflow构造在命令行。有关更多信息,请参见获得累计覆盖可重用的子系统和Stateflow®结构。
n维查找表
以下互动图表总结了多大程度上访问一个查找表的元素。在这个例子中,两个正弦波模块生成x和y索引,访问二维查找表10块元素充满随机值。
在这个模型中,查找表指数是1,2,…在每个方向,10。相位的正弦波2块是正弦波1块π/ 2弧度。由此产生x和y编号为一个圆的边缘,你看到当你检查生成的查找表覆盖。
报告包含一个二维表代表了查找表的元素。元素指标由细胞边界网格线,在每个维度10号。地区之间的查找表篡改表所代表的值是细胞区域。地区的外推的元素1和10是由细胞的元素在桌子边缘的,没有外部边界。
请注意
覆盖率报告只生成查表的详细信息图像的查找表400或更少的内插或外推的间隔。
的数量为每个单元格值内插或外推(执行计数)在测试期间由绿色表示分配给细胞。每个六级绿色阴影和执行计数的范围代表显示表的一侧。
如果你点击一个表格单元,你会看到一个对话框显示的索引位置细胞生成和执行的具体数量数量在测试期间。以下示例展示的内容color-shaded细胞圆的右边缘。
选中的单元格已用红色标出。您还可以点击推断细胞边缘的表。
一个大胆的网格线,表明至少有一个块输入等于其确切的索引值发生在模拟。单击边界显示确切数字的索引值。
下面的示例模型使用一个一天的查找表块10-by-10-by-5元素充满随机值。
这两个x和y表轴有指标1、2、……10。的z轴指数10,20,…,50。查找表值与访问x和y指数这两个正弦波模块生成的,在前面的例子中,和一个z斜坡块生成索引。
仿真后,您将看到下面的查找表的报告。
而不是一个二维表,链接力地图生成
显示如下表:
查找表覆盖一块三维查找表报告为一组二维表。
垂直酒吧代表确切的z索引值:10、20、30、40、50。如果一个竖线是大胆的,这表明至少一块输入等于它所代表的确切的索引值模拟。点击酒吧得到覆盖率报告栏代表的确切的索引值。
你可以报告查找表覆盖任何维度的查找表。四维表的覆盖率报告为组三维集,就像那些在前面的例子。五维表报告为套组三维集,等等。
块减少
所有模型覆盖率报告显示仿真软件的状态金宝app块减少参数的报告。在下面的例子中,设置力阻止减少了。
在下一个示例中,您启用动态仿真模块金宝app块减少参数,您没有设置力阻止减少了。
考虑下面的模型,模拟不执行MinMax1块——因为只有一个输入In3
。
如果你设置力阻止减少了报告不包含覆盖率数据这一块,因为最低输入MinMax1块总是1
。
如果你不设置力阻止减少了报告不包含,为减少块覆盖率数据。
关系边界
在覆盖面板的配置参数对话框,如果你选择关系边界覆盖率指标,软件模型中创建一个关系边界表覆盖报告为每个模型对象支持这个报道。金宝app表适用于显式或隐式关系操作参与模型对象。有关更多信息,请参见:
下面的表显示了关系边界的覆盖率报告关系input1 < = input2
。表的外观取决于操作数的数据类型。
整数
如果两个操作数都是整数(或者如果一个操作数是整数,另一个布尔值),表如下所示。
等相关操作
:operand_1
< =operand_2
第一行的两个操作数的形式
。operand_1
- - - - - -operand_2
第二行州在仿真的次数
= 1。operand_1
- - - - - -operand_2
第三行州在仿真的次数
等于operand_1
。operand_2
第四行州在仿真的次数
= 1。operand_1
- - - - - -operand_2
不动点
如果一个操作数的定点类型和另一个操作数是一个固定的点或整数,表如下所示。LSB
代表最低有效位的值。有关更多信息,请参见精度(定点设计师)。如果两个操作数有不同的精度,使用精密的较小值。
等相关操作
:operand_1
< =operand_2
第一行的两个操作数的形式
。operand_1
- - - - - -operand_2
第二行州在仿真的次数
等于operand_1
- - - - - -operand_2
lsb
。第三行州在仿真的次数
等于operand_1
。operand_2
第四行州在仿真的次数
等于operand_1
- - - - - -operand_2
LSB
。
浮点
如果一个操作数的浮点类型,表如下所示。托尔
代表一个值计算使用您指定的输入值和公差。如果你不指定公差,使用默认值。有关更多信息,请参见关系边界的覆盖率。
等相关操作
:operand_1
< =operand_2
第一行的两个操作数的形式
。operand_1
- - - - - -operand_2
第二行州在仿真的次数
值的范围吗operand_1
- - - - - -operand_2
(tol . . 0)
。第三行州在仿真的次数
值的范围吗operand_1
- - - - - -operand_2
(0 . . tol]
在模拟。
这个表的外观变化根据块的关系操作符。根据关系操作符的值
0是:operand_1
- - - - - -operand_2
排除关系边界范围。
包含在上述地区关系边界。
包括在以下地区关系边界。
关系操作符 | 报告格式 | 解释 |
---|---|---|
= = |
(tol . . 0) |
0是排除在外。 |
(0 . . tol] |
||
! = |
(tol . . 0) |
0是排除在外。 |
(0 . . tol] |
||
< = |
(tol . . 0) |
0是包含在以下地区关系边界。 |
(0 . . tol] |
||
< |
(tol . . 0) |
0是包含在上述地区关系边界。 |
(0 . . tol) |
||
> = |
(tol . . 0) |
0是包含在上述地区关系边界。 |
(0 . . tol) |
||
> |
(tol . . 0) |
0是包含在以下地区关系边界。 |
(0 . . tol] |
0是包括以下关系边界< =
但以上关系边界<
。这条规则是一致决定覆盖。例如:
的关系
input1 < = input2
,这一决定是正确的input1
小于或等于什么input2
。<
和=
被组合在一起。因此,0在于下面的地区关系边界。的关系
input1 < input2
,这一决定是真的只是如果input1
小于input2
。>
和=
被组合在一起。因此,0位于上方的区域关系边界。
浸透在整数溢出分析
在覆盖面板的配置参数对话框,如果你选择浸透在整数溢出覆盖率指标,软件上创建了一个饱和溢出模型覆盖率报告中的分析表。该软件创建表的每一块浸透在整数溢出参数选择。
饱和溢出分析表上列出的次数一块浸透在整数溢出,指示一个真正的决定。如果阻止不饱和整数溢出,表显示一个错误的决定。结果不发生在红色突出显示的表行。
下面的图形显示了饱和溢出分析表极大极小块的混合和燃烧发动机气体动力学子系统的子系统sldemo_fuelsys
模型的例子。
显示和突出问题的块,点击顶部的块的名字包含块的饱和溢出的部分分析表。
信号范围分析
如果您选择了信号范围范围覆盖指标,软件创建一个信号分析部分底部的模型覆盖报告。本节列出了每个输出信号的最大和最小信号值在仿真模型中测量。
访问的信号范围内迅速分析报告信号范围顶部的链接nonscrolling地区模型覆盖率报告,如下所示sldemo_fuelsys
示例模型报告。
每个块都是报道以分层的方式;子块直接出现在父块。在每一块的名字信号范围报告是一个链接。例如,选择自我传感器
链接来显示这个块中强调本国的图。
信号覆盖变尺度大小的信号
如果您选择信号的大小,软件创建一个变量信号宽度后部分信号范围覆盖报告中的数据模型。本节列出所有输出端口的最大和最小信号大小适应信号模型中。它还列出了仿真软件的内存分配信号,在仿真计算。金宝app这个列表不包括在模拟信号不变化的大小。
下面的例子显示了变量信号宽度部分覆盖报告。在这个例子中,Abs块信号从2到5,大小不一的分配5。
每个块都是报道以分层的方式;子块直接出现在父块。每个块的名字在变量信号宽度是一个链接列表。点击链接凸显在模型编辑器中相应的块。金宝app分析后,适应信号有一个广泛的线路设计。
金宝app设计验证器报道
如果您选择目标和约束,分析收集覆盖率数据金宝app仿真软件设计验证器在你的模型。
为一个例子,这是如何工作的,开放的sldvdemo_debounce_testobjblks
模型。
这个模型包含两个测试目标块:
真正的块定义了一个属性的信号值
2
。掩盖了内部的边缘块,目标子系统,描述了属性的输出和阻止蒙面目标子系统的变化
2
来1
。
的金宝app仿真软件设计验证器软件分析这个模型,利用模型包含测试用例实现特定的测试目标。原始模型是否达到这些目标,模拟利用模型和收集模型覆盖率数据。模型覆盖工具分析任何决策点或您指定的时间间隔内值测试目标块。
在这个例子中,覆盖率达到100%的覆盖率报告显示真正的阻止,因为信号值2
至少一次。信号值2
在6 14时间步骤。
输入信号边缘块的值来实现真正的
的14次步骤。