【技术实现步骤摘要】
分支覆盖率测试、覆盖率测试方法、电子设备和存储介质
[0001]本申请涉及测试
,尤其涉及一种分支覆盖率测试、覆盖率测试方法、电子设备和存储介质。
技术介绍
[0002]软件产品推出前,均会进行产品测试。针对软件产品的测试,覆盖率是度量测试完整性的一个手段,也是测试有效性的一个度量。覆盖率根据已执行代码确定,由测试需求和测试用例的覆盖或已执行代码的覆盖表示,用于对软件产品进行可靠性、稳定性以及性能进行量化的评测。覆盖率测试的过程是对测试完全程度的评测,建立在对测试结果的评估的基础上、和对测试过程中确定的变更请求(即测试过程中确定的缺陷)所进行的分析的基础上。随着待测产品的复杂程度越来越高,覆盖率测试的效率也需要在保证准确性的基础上进一步提高。
技术实现思路
[0003]本申请实施例提供一种分支覆盖率测试、覆盖率测试方法、电子设备和存储介质,以实现对软件产品的高效测试。
[0004]第一方面,本申请实施例提供了分支覆盖率测试方法,包括:根据待测文件包,生成语法树;待测文件包包括多个待测文件,每个待 ...
【技术保护点】
【技术特征摘要】
1.一种分支覆盖率测试方法,其特征在于,包括:根据待测文件包,生成语法树;所述待测文件包包括多个待测文件,每个所述待测文件包括多个目标语言代码语句;所述语法树的节点对应于所述目标语言代码语句;根据所述语法树的各节点的圈复杂度,计算所述语法树的圈复杂度;根据所述语法树的圈复杂度,以及覆盖率文件,确定所述待测文件包的分支覆盖率;所述覆盖率文件为记载所述待测文件包的代码覆盖率的文件。2.根据权利要求1所述的方法,其特征在于,每个待测文件对应一个语法树;所述根据目标语言代码编写的待测文件包,生成语法树,包括:针对单个待测文件,根据目标语言的原生包路径,递归解析所述待测文件,生成所述待测文件的解析文件;解析所述待测文件的解析文件中的令牌文件设置值,生成所述待测文件对应的语法树;所述令牌文件设置值用于描述所述待测文件中目标语言代码语句的语句结构。3.根据权利要求2所述的方法,其特征在于,所述根据所述待测文件包的原生包路径,递归解析所述待测文件,生成解析文件,包括:根据所述待测文件包的原生包路径,获得目标语言原生包;利用所述目标语言原生包,对所述待测文件中目标语言代码语句的行代码进行标记,得到所述待测文件中目标语言代码语句的行代码标记;递归解析所述行代码标记,得到所述待测文件的解析文件。4.根据权利要求1所述的方法,其特征在于,所述根据所述语法树的各节点的圈复杂度,计算所述语法树的圈复杂度,包括:递归解析所述语法树中存在嵌套的节点的圈复杂度;汇总所述语法树中存在嵌套的节点的圈复杂度,以计算得到所述语法树的圈复杂度。5.根据权利要求4所述的方法,其特征在于,所述汇总所述语法树中存在嵌套的节点的圈复杂度,以计算得到所述语法树的圈复杂度,包括:从单个语法树的全部节点中,过滤预定义类型的节点,以及所述预定...
【专利技术属性】
技术研发人员:陈敏锐,
申请(专利权)人:阿里巴巴中国有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。