[发明专利]代码执行路径的获取方法、装置、计算机设备及存储介质在审
申请号: | 202110011784.8 | 申请日: | 2021-01-04 |
公开(公告)号: | CN112685316A | 公开(公告)日: | 2021-04-20 |
发明(设计)人: | 陈策 | 申请(专利权)人: | 广州品唯软件有限公司 |
主分类号: | G06F11/36 | 分类号: | G06F11/36 |
代理公司: | 北京市万慧达律师事务所 11111 | 代理人: | 陈怡 |
地址: | 510220 广东省广州*** | 国省代码: | 广东;44 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 代码 执行 路径 获取 方法 装置 计算机 设备 存储 介质 | ||
本发明公开了一种代码执行路径的获取方法、装置、计算机设备及存储介质,该方法包括:将预设插桩代码添加至待测试代码中,生成目标代码,其中,所述预设插桩代码包括日志打印语句,根据测试用例执行所述目标代码,利用所述日志打印语句获取执行过程中生成的日志信息,对所述日志信息进行解析,获取所述目标代码的执行路径信息。本发明通过在原有的插桩逻辑上进行二次开发,插入一些日志打印语句,不增加额外耗时且不更改现有的业务代码逻辑,实现在业务场景执行完之后进行分析获取代码执行路径等信息。
技术领域
本发明涉及软件测试技术领域,特别涉及一种代码执行路径的获取方法、装置、计算机设备及存储介质。
背景技术
软件开发过程中,需要对开发的应用程序进行相关测试,如代码覆盖测试等。代码覆盖(英语:Code coverage)是软件测试中的一种度量,描述程序中源代码被测试的比例和程度,所得比例称为代码覆盖率。代码覆盖率表征了代码在测试中能够被覆盖的程度。
在进行代码覆盖率测试过程中,代码的执行路径也是一项十分重要的信息,现有的方案中,路径信息只能通过系统提供的堆栈信息获取,但是由于问题难以预测,所以系统堆栈信息几乎无法准确保留有用的数据,并且系统堆栈信息还存在无法跨线程呈现问题、十分耗时、影响所在线程的执行效率以及难以追查到源码路径信息等问题。
因此,亟需提出一种新的代码执行路径的获取方法,以解决上述问题。
发明内容
为了解决现有技术的问题,本发明实施例提供了一种代码执行路径的获取方法、装置、计算机设备以及存储介质,以克服现有技术中存在的问题。
为解决上述一个或多个技术问题,本发明采用的技术方案是:
第一方面,提供了一种测试信息关联方法,该方法包括如下步骤:
将预设插桩代码添加至待测试代码中,生成目标代码,其中,所述预设插桩代码包括日志打印语句;
根据测试用例执行所述目标代码,利用所述日志打印语句获取执行过程中生成的日志信息;
对所述日志信息进行解析,获取所述目标代码的执行路径信息。
进一步的,所述将预设插桩代码添加至待测试代码中,生成目标代码包括:
确定待测试代码中的目标插桩位置,将所述日志打印语句添加至所述目标插桩位置,生成目标代码,所述目标插桩位置包括所述待测试代码中的方法入口。
进一步的,所述方法还包括在根据测试用例执行所述目标代码前,对预设日志采集工具执行清除操作;
所述根据测试用例执行所述目标代码,利用所述日志打印语句获取执行过程中生成的日志信息包括:
根据测试用例执行所述目标代码,利用所述日志打印语句获取执行过程中生成的日志信息,并将所述日志信息输出至所述预设日志采集工具。
进一步的,所述预设日志采集工具包括jacoco。
进一步的,所述对所述日志信息进行解析,获取所述目标代码的执行路径信息包括:
对所述日志信息进行解析,对解析结果进行去重处理,获取所述目标代码的执行路径信息。
进一步的,所述方法还包括:
当所述执行路径信息不符合预设要求时,发出预警信息。
进一步的,所述方法还包括:
将所述执行路径信息与所述测试用例进行关联后,上传至目标服务器,以供后续查看。
第二方面,提供了一种装置,所述装置包括:
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于广州品唯软件有限公司,未经广州品唯软件有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202110011784.8/2.html,转载请声明来源钻瓜专利网。
- 上一篇:一种汽车白车身闭合件的自动滚边设备
- 下一篇:车辆的电池换电方法和装置