[发明专利]一种实现针对逻辑语句代码覆盖率的测试方法在审
申请号: | 202110011892.5 | 申请日: | 2021-01-06 |
公开(公告)号: | CN112667515A | 公开(公告)日: | 2021-04-16 |
发明(设计)人: | 沈磊;王伟莉;汪鹏 | 申请(专利权)人: | 杭州当虹科技股份有限公司 |
主分类号: | G06F11/36 | 分类号: | G06F11/36 |
代理公司: | 杭州橙知果专利代理事务所(特殊普通合伙) 33261 | 代理人: | 杜放 |
地址: | 310000 浙江省杭州市西*** | 国省代码: | 浙江;33 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 实现 针对 逻辑 语句 代码 覆盖率 测试 方法 | ||
1.一种实现针对逻辑语句代码覆盖率的测试方法,其特征是,具体包括如下步骤:
(1)用例及其代码管理模块执行测试用例,生成代码覆盖率到增量代码覆盖率部署模块,并将用例及代码发送给数据存储模块进行存储;
(2)增量代码覆盖率部署模块结合diff文件,梳理出代码修改点与用例关联后到代码逻辑语句统计整理模块,同时上报用例与代码覆盖率数据集到数据存储模块;
(3)数据存储模块为代码逻辑语句统计整理模块提供代码覆盖率与用例的数据集后,代码逻辑语句统计整理模块结合单次测试用例版本,输出遗漏点给测试报告输出整理模块;
(4)测试报告输出整理模块标记出遗漏点对应用例的重要程度,考虑是否需要补充用例,输出测试报告。
2.根据权利要求1所述的一种实现针对逻辑语句代码覆盖率的测试方法,其特征是,在步骤(1)中,用例及其代理管理模块包括用例管理模块和代码管理模块;用例管理模块基于微服务实现,所有的代码调用都基于接口实现,因此接口用例成为保障后台运用的一个最基础的方式,用例管理模块管理维护这些接口用例,实现对于用例执行顺序、优先级、用例场景组合;代码管理模块主要对于各个版本代码实现统一的管理,为代码版本比对提供数据支撑。
3.根据权利要求1所述的一种实现针对逻辑语句代码覆盖率的测试方法,其特征是,在步骤(2)中,在增量代码覆盖率部署模块中,利用已有的java字节码动态插桩技术,达到对用例执行后动态统计出用例对代码覆盖率;结合代码管理模块,过滤出指定版本的代码对比文件;结合代码对比文件,统计出增量修改下受影响的代码,结合代码覆盖率查看是否存在需要执行的用例。
4.根据权利要求3所述的一种实现针对逻辑语句代码覆盖率的测试方法,其特征是,在步骤(3)中,在代码逻辑语句统计整理模块中,基于java的Attach工作机制,监听出所有的java类和方法的调用,绘制出调用链路;存储每条用例的调用链路,对于多条链路涉及覆盖到交织代码块实现代码的一一标识,根据时间标识出代码链路的颜色;结合静态代码文件所有代码行,比较出未覆盖的代码块,对于未覆盖的代码块人为确认出缺失用例的补充。
5.根据权利要求4所述的一种实现针对逻辑语句代码覆盖率的测试方法,其特征是,在步骤(4)中,测试报告输出整理模块基于代码覆盖率数据出具一份可以支持阅读的代码覆盖率报告,主要包含一下方面:
(a)数据汇总统计:在单个接口收集到了代码覆盖率数据的基础上增加汇总统计的数据集,主要数据来源是单条数据;汇总统计基于方法或者类实现统计,对于每个接口涉及的每个方法数据实现一个汇总的统计;
(b)排查未覆盖的函数:基于上面每个接口代码覆盖率再次汇总在静态代码文件后,比较出没有覆盖到的代码块以及缺失的代码逻辑,对于未覆盖的代码追踪出对应的接口。
6.根据权利要求1或2或3或4或5所述的一种实现针对逻辑语句代码覆盖率的测试方法,其特征是,所述数据存储模块对于所有执行过的代码逻辑语句都进行数据持久化存储,对于不同版本代码逻辑语句实现基线数据补充,数据存储模块提供代码逻辑语句存储、查询的功能,具体如下:
(i)存储:这里采用一个基线数据递增不递减的策略,每次执行后如果代码逻辑语句和基线已有的数据一致,不存储代码逻辑语句;如果不一致则存储一条新纪录的代码逻辑语句,添加时间戳标识,当查询时发现同一个接口可能存在多条代码逻辑语句,可以对比多条语句不同时间段修改导致的结果;
(ii)查询:当具有代码修改记录文件,需要提供对应接口或者服务时,数据存储模块支持模糊查询,根据数据存储时关键字去默认给出最新的代码逻辑链路,同时支持查询指定时间段代码逻辑链路。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于杭州当虹科技股份有限公司,未经杭州当虹科技股份有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202110011892.5/1.html,转载请声明来源钻瓜专利网。