[发明专利]一种代码覆盖率分析方法、装置、设备及存储介质有效
申请号: | 201811133043.1 | 申请日: | 2018-09-27 |
公开(公告)号: | CN109388566B | 公开(公告)日: | 2022-07-29 |
发明(设计)人: | 万书吉 | 申请(专利权)人: | 北京城市网邻信息技术有限公司 |
主分类号: | G06F11/36 | 分类号: | G06F11/36 |
代理公司: | 工业和信息化部电子专利中心 11010 | 代理人: | 齐洁茹 |
地址: | 100015 北京市朝阳区酒仙桥*** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 代码 覆盖率 分析 方法 装置 设备 存储 介质 | ||
本发明公开了一种代码覆盖率分析方法、装置、设备及存储介质,所述方法包括:在代码测试时,将各个测试阶段的代码覆盖率结果文件进行合并,基于合并后的文件,生成汇总的代码覆盖率结果报告;确定待分析的第一被测试代码和第二被测试代码,并在汇总的代码覆盖率结果报告中得到第一被测试代码和第二被测试代码的代码覆盖率结果报告;建立第一被测试代码和第二被测试代码的代码覆盖率结果之间的映射关系,根据所述映射关系,对两个代码覆盖率结果进行差异分析。本发明所述方案实现了在整体上对测试覆盖率情况进行统计分析,基于该分析的分析结果,可以使测试更有针对性,减少重复覆盖。
技术领域
本发明涉及软件测试领域,尤其涉及一种代码覆盖率分析方法、装置、设备及存储介质。
背景技术
软件测试是指通过自动化或者手工的方式,对软件进行检测以发现程序错误,保证软件质量的过程。通常包括单元测试,接口测试,集成测试,性能测试等不同级别,而从实施的角度来讲又分为手工测试、自动化测试、ad-hoc测试(随机测试)等等。
可见,软件测试分不同阶段及不同的实施例类型。然而,软件测试的每个阶段覆盖率均单独统计,比如单元测试通常由开发人员进行,集成测试通常由测试人员进行,开发人员和测试人员很难了解互相的测试覆盖率细节情况,从而很难在整体上针对覆盖情况增加测试用例。而针对不同的实施类型,例如手工测试和自动化测试,同样很难互相同步覆盖率程度,不好从总体把握漏测情况。另外,在软件功能迭代的过程中,在针对新功能进行一系列的测试过程中,很难统计新功能的覆盖对总体覆盖产生的影响。
也就是说,现有的测试覆盖率统计工具只能单机运行,存在无法在整体上对测试覆盖率情况进行统计分析的问题。
发明内容
鉴于上述问题,提出了本发明实施例以便提供一种解决上述问题的代码覆盖率分析方法、装置、设备及存储介质。
依据本发明实施例的一个方面,提供一种代码覆盖率分析方法,包括:
在代码测试时,将各个测试阶段的代码覆盖率结果文件进行合并,基于合并后的文件,生成汇总的代码覆盖率结果报告;
确定待分析的第一被测试代码和第二被测试代码,并在所述汇总的代码覆盖率结果报告中得到所述第一被测试代码和第二被测试代码的代码覆盖率结果报告;
建立所述第一被测试代码和第二被测试代码的代码覆盖率结果之间的映射关系,根据所述映射关系,对两个代码覆盖率结果进行差异分析。
可选地,所述将各个测试阶段的代码覆盖率结果文件进行合并,包括:
在进行第i阶段的测试时,收集第i阶段的代码覆盖率结果文件;i=1,…,N;N为正整数;
调取所述第i-1阶段的代码覆盖率结果文件与收集的第i阶段的代码覆盖率结果文件进行合并;
重复上述过程,直到完成所有测试阶段。
可选地,所述建立所述第一被测试代码和第二被测试代码的代码覆盖率结果之间的映射关系,包括:
解析所述第一被测试代码的代码覆盖率结果报告和第二被测试代码的代码覆盖率结果报告,生成所述第一被测试代码和第二被测试代码的代码覆盖率结果文档树;
建立所述第一被测试代码和第二被测试代码的代码覆盖率结果文档树的映射关系。
可选地,所述代码覆盖率结果文档树为超文本标记语言html格式的代码覆盖率结果文档树;
所述html格式的代码覆盖率结果文档树中包含多个标签元素,每个标签元素的id值映射为对应的测试代码中的一个行号,每个标签元素的类属性的值映射为所对应行号的测试代码的代码覆盖率结果。
可选地,所述建立所述第一被测试代码和第二被测试代码的代码覆盖率结果文档树的映射关系,包括:
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于北京城市网邻信息技术有限公司,未经北京城市网邻信息技术有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201811133043.1/2.html,转载请声明来源钻瓜专利网。
- 上一篇:基于生成式对抗网络的软件系统性能优化方法
- 下一篇:代码处理方法、装置及介质