软件测试覆盖率的确定方法、系统、存储介质及电子设备技术方案

技术编号:43345189 阅读:39 留言:0更新日期:2024-11-15 20:42
本发明专利技术实施例提供一种软件测试覆盖率的确定方法、系统、存储介质及电子设备,属于计算机技术领域。软件测试覆盖率的确定方法包括:从待测试软件的项目主目录开始进行逐级目录扫描,以确定全部的项目文件;按照项目文件被扫描到的顺序,依次扫描每个项目文件,以确定待测试软件中定义的函数总数量;运行待测试软件的代码,监听运行过程中被调用的函数,并统计定义的函数被调用的次数;在待测试软件的测试结束后,停止运行待测试软件的代码,并以定义的函数被调用的次数与函数总数量的比值确定待测试软件被测试的覆盖率。该方法能够更好的反映代码中业务逻辑的处理情况,从宏观角度发现业务逻辑设计和代码实现中存在的缺陷。

【技术实现步骤摘要】

本专利技术涉及计算机,具体地涉及一种软件测试覆盖率的确定方法、系统、存储介质及电子设备


技术介绍

1、代码覆盖是软件测试中的一种度量手段,是一种白盒测试方法,描述程序中源代码被测试的比例和程度,所得比例就称之为代码覆盖率。在做软件测试时,代码覆盖率常常被用来作为衡量测试好坏的指标。使用代码覆盖率的意义主要在于能根据测试出的未覆盖部分的代码,来回溯项目的设计是否合理,在代码中是否存在混乱点,能以此提醒开发和设计人员梳理代码的逻辑关系,提升代码质量。

2、目前通用的覆盖率标准有四个,分别为语句覆盖、判定覆盖、条件覆盖和路径覆盖。语句覆盖又叫行覆盖,是最常见的一种覆盖方式,它度量被测试代码的每一行可执行语句是否被执行了。判断覆盖又称分支覆盖,它度量程序代码中的每个判断的分支是否被执行。条件覆盖,度量判定中的每个子表达式结果true和false是否被测试到了。路径覆盖又称断言覆盖,度量了是否函数的每一个分支都被执行了。

3、上述几种覆盖率方案都有各自的缺陷,无法从宏观角度评判软件项目的业务逻辑设计是否合理,也无法从宏观角度充分发现代码实现本文档来自技高网...

【技术保护点】

1.一种软件测试覆盖率的确定方法,包括:

2.根据权利要求1所述的软件测试覆盖率的确定方法,其特征在于,所述从待测试软件的项目主目录开始进行逐级目录扫描,以确定全部的项目文件,包括:

3.根据权利要求1所述的软件测试覆盖率的确定方法,其特征在于,若所述待测试软件的代码结构按照层级进行定义,则按照定义的层级分别统计各层级定义的函数数量。

4.根据权利要求3所述的软件测试覆盖率的确定方法,其特征在于,所述代码结构的层级包括以下中的一者或多者:控制层、业务层、仓库层。

5.根据权利要求1所述的软件测试覆盖率的确定方法,其特征在于,所述统计所述定义...

【技术特征摘要】

1.一种软件测试覆盖率的确定方法,包括:

2.根据权利要求1所述的软件测试覆盖率的确定方法,其特征在于,所述从待测试软件的项目主目录开始进行逐级目录扫描,以确定全部的项目文件,包括:

3.根据权利要求1所述的软件测试覆盖率的确定方法,其特征在于,若所述待测试软件的代码结构按照层级进行定义,则按照定义的层级分别统计各层级定义的函数数量。

4.根据权利要求3所述的软件测试覆盖率的确定方法,其特征在于,所述代码结构的层级包括以下中的一者或多者:控制层、业务层、仓库层。

5.根据权利要求1所述的软件测试覆盖率的确定方法,其特征在于,所述统计所述定义的函数被调用的次数的过程中,对于条件循环执行的代码,不考虑在循环中定义的函数被实际调用执行的次数,以该条件循环执行的代码被循环执行的次数作为该函数的执行次数。

6.根据权利要求1所述的软件测试覆盖率的确定方法,其特征在于,所述统计所述定义的函数被调用的次数的过...

【专利技术属性】
技术研发人员:廖彪
申请(专利权)人:北京国双科技有限公司
类型:发明
国别省市:

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

1