一种功能覆盖率测试度量系统和方法技术方案

技术编号:2845215 阅读:221 留言:0更新日期:2012-04-11 18:40
一种功能覆盖率测试度量系统和方法。该系统包括总线功能单元(3)、激励单元(2)、主控台(1)、结果分析单元(4)、以及验证用例功能覆盖率统计单元(5),用于通过所述分析结果,计算出验证用例中的各个度量要素参数的功能覆盖得分,并根据所述各个度量要素参数的功能覆盖得分得到验证用例的功能覆盖率;被测对象功能覆盖率统计单元(6),用于通过所述分析结果,计算出被测对象的各个测试层的功能覆盖得分,得到被测对象的功能覆盖率。本发明专利技术还提供一种功能覆盖率度量的测试方法,能够在EDA工具中实现,并可以对验证用例和被测对象功能覆盖率进行自动统计。

【技术实现步骤摘要】

本专利技术涉及电子及通信领域的测试技术,特别是涉及。
技术介绍
在电子及通信软件系统测试领域,通常都是用代码覆盖进行测试,代码覆盖无论是概念还是在得到电子设计自动化(Electronic Design Automotic,EDA)工具的支持方面,都已经非常成熟,代码覆盖率的度量在设计与测试激励确定以后就唯一确定了,然而,尽管能够达到100%的代码覆盖率,但在测试的过程中,测试人员还是不能肯定所设计的被测对象(Device Under Test,DUT)是否已经不存在问题。这是因为在代码覆盖测试中被测试的仅仅是代码自身,测试人员并不知道,在测试的过程中,是否已经输入了所有的激励,并已经接收了所有可能的结果,同时,被测对象的状态是否都已经访问,所有的内部转换是否都出现了,感兴趣的事件是否发生等等问题。针对这些问题,业界提出了功能覆盖的概念,功能覆盖的定义为来自设备和测试计划规格的清晰的功能需求。相对于代码覆盖而言,功能覆盖是一个比较新的概念,功能覆盖率的度量因功能覆盖率代码的不同而不同,所以功能覆盖在度量实现上并不如代码覆盖率那么清晰和容易界定。在功能覆盖率度量的实现上,由于功能覆盖率来自于功能需求,功能需求(测试点)都以文档的方式来描述。目前广泛采用的文档标记功能覆盖率的方法是在文档上标明功能点,并辅之以相应的验证用例,当一个验证用例通过了,就表示该验证用例对应的功能点被覆盖了,于是在文档上进行标记,最后测试人员根据文档的标记情况来统计整个测试项目的覆盖率情况。这种方法存在着明显不足之处第一,因度量方式是手工操作,标记、统计起来都很是麻烦,而且往往会遗漏对一些功能点的标记和统计;第二,功能需求容易与实际代码脱节,不能够紧密耦合,一旦需求或者实际代码改变,文档中记录的功能点就需要改变功能描述语句和重新标记。
技术实现思路
本专利技术的目的在于提出的一种的功能覆盖率测试度量系统和方法,该系统和方法能够在EDA工具中实现,并可以对验证用例和被测对象功能覆盖率进行自动统计。为实现本专利技术目的而提供的一种功能覆盖率测试度量系统,包括总线功能单元,用于输出被测对象产生的测试请求;激励单元,用于接收所述测试请求并进行转发,以及根据所述测试请求产生并输出验证用例;主控台,用于接收所述激励单元产生的验证用例和转发的测试请求,并根据测试请求对激励事件进行测试,输出测试结果;结果分析单元,用于接收所述测试结果进行分析,并输出分析结果;验证用例功能覆盖率统计单元,用于通过所述分析结果,计算出验证用例中的各个度量要素参数的功能覆盖得分,并根据所述各个度量要素参数的功能覆盖得分得到验证用例的功能覆盖率;以及被测对象功能覆盖率统计单元,用于通过所述分析结果,计算出被测对象的各个测试层的功能覆盖得分,得到被测对象的功能覆盖率。所述验证用例功能覆盖率统计单元包括要素参数设置单元,用于按功能处理过程为验证用例设置功能覆盖率集合要素参数,对象要素参数和片段要素参数;片段得分计算单元,用于计算片段的覆盖情况和目标值的比值,并与1比较大小后输出其中的较小值做为片段的得分;对象得分计算单元,用于根据一个对象下所有片段的得分及对应的权重,计算出所述对象的得分并输出;功能覆盖率集合得分计算单元,用于根据一个验证用例下所有对象的得分及对应的权重,计算出所述验证用例的功能覆盖率。所述验证用例功能覆盖率统计单元还包括 第一权重赋值单元,用于为片段和对象赋予权重值。所述被测对象功能覆盖率统计单元包括测试层划分单元,用以将被测对象划分为片段测试层、测试点测试层、验证特性测试层和需求规格测试层;片段测试层得分计算单元,用于计算片段的覆盖情况和目标值的比值,并与1比较大小后输出其中的较小值做为片段测试层的得分;测试点测试层得分计算单元,用于根据一个测试点测试层中所有片段得分及对应的权重,计算出所述测试点测试层的得分并输出;验证特性测试层得分计算单元,用于根据一个验证特性测试层中所有片段的得分及对应的权重,计算出所述验证特性测试层的得分并输出;需求规格测试层得分计算单元,用于根据一个需求规格测试层中所有片段的得分及对应的权重,计算出所述验证特性测试层的得分并输出;测试点通过率计算单元,用于根据通过的测试点数目和测试点总数计算出测试点通过率,得到被测对象的功能覆盖率。所述被测对象功能覆盖率统计单元还包括第二权重赋值单元,用于为片段赋予权重值。为实现本专利技术目的还提供了一种功能覆盖率测试度量方法,包括下列步骤步骤A)根据每个被测对象的功能将被测对象分解为多个测试点,并由被测对象发出测试请求,利用验证用例对测试点进行验证测试,得到分析结果;步骤B)利用分析结果,计算出验证用例中的各个度量要素参数的覆盖得分,得到验证用例的功能覆盖率,并根据测试点中的被测片段命中的情况,结合被测对象的测试点的权重,计算出被测对象各个测试层的量化得分,得到被测对象的功能覆盖率。所述步骤A)之前进一步包括下列步骤步骤A1)根据被测对象设计具体的验证用例,存储在激励单元中;同时,根据验证用例的功能处理过程,划分出多个功能覆盖率的基本度量要素参数。所述步骤A1)包括下列步骤 根据被测对象的功能将被测对象划分为四个测试层,分别是需求规格测试层、验证特性测试层、测试点测试层、被测片段测试层四个测试层;根据验证用例的功能处理过程,为验证用例设置功能覆盖率集合要素参数、对象要素参数、度量片段要素参数。所述步骤B)包括下列步骤步骤B1)利用分析结果,根据测试点中的被测片段被验证用例命中的情况,收集到与验证用例对应的被命中的被测片段,计算度量片段覆盖情况;步骤B2)以验证用例对被测对象的功能覆盖率为基准,根据度量片段的覆盖情况,计算验证用例的得分,得到验证用例的功能覆盖率,以及根据被测片段被命中的情况,计算出被测对象的得分,得到被测对象的功能覆盖率。所述步骤B2)中以验证用例对被测对象的功能覆盖率为基准,根据度量片段的覆盖情况,计算验证用例的得分,得到验证用例的功能覆盖率,具体包括下列步骤步骤B21)计算验证用例覆盖的对象中包含的所有度量片段的得分;步骤B22)计算验证用例覆盖的功能覆盖率集合中包含的所有对象的得分,得到验证用例的得分。所述步骤B2)中根据被测片段被命中的情况,计算出被测对象的得分,得到被测对象的功能覆盖率具体包括下列步骤步骤B31)根据被测对象中被测片段命中的情况,结合被测对象的测试点的权重,计算出被测片段测试层的功能覆盖率;步骤B32)根据被测对象中测试点测试层中包含的所有片段的功能覆盖率,计算测试点测试层的功能覆盖率;步骤B33)根据被测对象中验证特性测试层中包含的所有片段的功能覆盖率,计算验证特性测试层的功能覆盖率;步骤B34)根据被测对象中需求规格测试层中包含的所有片段的功能覆盖率,计算需求规格测试层的功能覆盖率,然后计算出被测对象的所有测试点的通过率,得到被测对象的功能覆盖率。本专利技术的有益效果是通过本专利技术中的基于测试点的功能覆盖率测试度量系统和方法得出功能覆盖率数据,可以为测试项目的验证充分性提供定量评价标准和依据;利用集成了功能覆盖率度量模型的验证平台,验证人员使用本系统可以迅速建立起高效的验证环境,减少验证环境建立时间,提高验证质量,实现仿真验证的自动化。附图说明图1是本发本文档来自技高网
...

【技术保护点】
一种功能覆盖率测试度量系统,其特征在于,包括:总线功能单元(3),用于输出被测对象产生的测试请求;激励单元(2),用于接收所述测试请求并进行转发,以及根据所述测试请求产生并输出验证用例;主控台(1),用于接收所述激励 单元(2)产生的验证用例和转发的测试请求,并根据测试请求对激励事件进行测试,输出测试结果;结果分析单元(4),用于接收所述测试结果进行分析,并输出分析结果;验证用例功能覆盖率统计单元(5),用于通过所述分析结果,计算出验证用 例中的各个度量要素参数的功能覆盖得分,并根据所述各个度量要素参数的功能覆盖得分得到验证用例的功能覆盖率;以及被测对象功能覆盖率统计单元(6),用于通过所述分析结果,计算出被测对象的各个测试层的功能覆盖得分,得到被测对象的功能覆盖率。

【技术特征摘要】
1.一种功能覆盖率测试度量系统,其特征在于,包括总线功能单元(3),用于输出被测对象产生的测试请求;激励单元(2),用于接收所述测试请求并进行转发,以及根据所述测试请求产生并输出验证用例;主控台(1),用于接收所述激励单元(2)产生的验证用例和转发的测试请求,并根据测试请求对激励事件进行测试,输出测试结果;结果分析单元(4),用于接收所述测试结果进行分析,并输出分析结果;验证用例功能覆盖率统计单元(5),用于通过所述分析结果,计算出验证用例中的各个度量要素参数的功能覆盖得分,并根据所述各个度量要素参数的功能覆盖得分得到验证用例的功能覆盖率;以及被测对象功能覆盖率统计单元(6),用于通过所述分析结果,计算出被测对象的各个测试层的功能覆盖得分,得到被测对象的功能覆盖率。2.根据权利要求1所述的功能覆盖率测试度量系统,其特征在于,所述验证用例功能覆盖率统计单元(5)包括要素参数设置单元,用于按功能处理过程为验证用例设置功能覆盖率集合要素参数,对象要素参数和片段要素参数;片段得分计算单元,用于计算片段的覆盖情况和目标值的比值,并与1比较大小后输出其中的较小值做为片段的得分;对象得分计算单元,用于根据一个对象下所有片段的得分及对应的权重,计算出所述对象的得分并输出;功能覆盖率集合得分计算单元,用于根据一个验证用例下所有对象的得分及对应的权重,计算出所述验证用例的功能覆盖率。3.根据权利要求2所述的功能覆盖率测试度量系统,其特征在于,所述验证用例功能覆盖率统计单元(5)还包括第一权重赋值单元,用于为片段和对象赋予权重值。4.根据权利要求1所述的功能覆盖率测试度量系统,其特征在于,所述被测对象功能覆盖率统计单元(6)包括测试层划分单元,用以将被测对象划分为片段测试层、测试点测试层、验证特性测试层和需求规格测试层;片段测试层得分计算单元,用于计算片段的覆盖情况和目标值的比值,并与1比较大小后输出其中的较小值做为片段测试层的得分;测试点测试层得分计算单元,用于根据一个测试点测试层中所有片段得分及对应的权重,计算出所述测试点测试层的得分并输出;验证特性测试层得分计算单元,用于根据一个验证特性测试层中所有片段的得分及对应的权重,计算出所述验证特性测试层的得分并输出;需求规格测试层得分计算单元,用于根据一个需求规格测试层中所有片段的得分及对应的权重,计算出所述验证特性测试层的得分并输出;测试点通过率计算单元,用于根据通过的测试点数目和测试点总数计算出测试点通过率,得到被测对象的功能覆盖率。5.根据权利要求4所述的功能覆盖率测试度量系统,其特征在于,所述被测对象功能覆盖率统计单元(6)还包括第二权重赋值单元,用于为片段赋予权重值。6.一种功能覆盖率测试度量方法,其特征在于,包括下列步骤...

【专利技术属性】
技术研发人员:易敏王进成程智辉
申请(专利权)人:华为技术有限公司
类型:发明
国别省市:94[中国|深圳]

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1