[发明专利]一种测试覆盖度信息的获取方法及装置有效
申请号: | 201910838983.9 | 申请日: | 2019-09-05 |
公开(公告)号: | CN110704303B | 公开(公告)日: | 2021-07-20 |
发明(设计)人: | 潘志祥;万振华;李华;王颉 | 申请(专利权)人: | 深圳开源互联网安全技术有限公司 |
主分类号: | G06F11/36 | 分类号: | G06F11/36 |
代理公司: | 深圳中一联合知识产权代理有限公司 44414 | 代理人: | 李娟 |
地址: | 518000 广东省深圳市龙华区龙华*** | 国省代码: | 广东;44 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 测试 覆盖 信息 获取 方法 装置 | ||
本申请适用于计算机技术领域,提供了一种测试覆盖度信息的获取方法,包括:获取待测项目的功能测试请求;所述功能测试请求包括待测试功能对应的功能标识信息;基于预设功能标识信息与预设执行源码之间的对应关系,确定所述功能标识信息对应的执行源码;运行所述执行源码,得到所述执行源码的运行结果;基于所有所述第二函数的运行结果和预设待测项目的源码信息,得到所述待测项目的测试覆盖度信息。上述方法,在测试环节,通过预先插入的第二函数基于预设待测试项目的源码信息可以确定统计测试覆盖度情况,了解待测试项目中已经完成测试的源码和还未测试的源码。测试人员可以基于测试覆盖度信息及时的对测试用例进行调整,完善测试过程。
技术领域
本申请属于计算机技术领域,尤其涉及一种测试覆盖度信息的获取方法及装置。
背景技术
研发人员在完成代码开发后,需要对代码进行测试,其中,对代码进行全面的测试时在进行测试时是很重要的,获取代码测试覆盖度可以清楚的了解到未测试的部分。但是,现有的测试覆盖度的获取方式是使用静态的测试数据来测试的,预设所有可能的测试用例,对代码进行测试。但是,这种测试覆盖度的获取方式不能准确的获取待测试项目的测试覆盖度。
发明内容
本申请实施例提供了一种测试覆盖度信息的获取方法及装置,可以解决现有的测试覆盖度的获取方式不能准确的获取待测试项目的测试覆盖度的问题。
第一方面,本申请实施例提供了一种测试覆盖度信息的获取方法,包括:
获取待测项目的功能测试请求;所述功能测试请求包括待测试功能对应的功能标识信息;
基于预设功能标识信息与预设执行源码之间的对应关系,确定所述功能标识信息对应的执行源码;其中,所述执行源码包括用于测试所述待测试功能的第一函数和预先插入的第二函数;所述第二函数用于收集和统计所述第一函数的执行情况信息;
运行所述执行源码,得到所述执行源码的运行结果;所述运行结果包括所述第一函数的运行结果和所述第二函数的运行结果;
基于所有所述第二函数的运行结果和预设待测项目的源码信息,得到所述待测项目的测试覆盖度信息。
进一步地,所述第二函数包括信息收集函数和源码行数统计函数;所述信息收集函数用于收集所述第一函数的函数运行信息;
所述运行所述执行源码,得到所述执行源码的运行结果,包括:
运行所述执行源码,得到所述第一函数的运行结果、所述信息收集函数的运行结果和源码行数统计函数的运行结果。
进一步地,在所述基于预设功能标识信息与预设执行源码之间的对应关系,确定所述功能标识信息对应的执行源码之前,还包括:
当获取到所述待测项目对应的项目测试请求时,启动预设检测探针,从所述待测项目的源码中获取到所有类;
基于预设插桩策略,将预设第二函数插入每个所述类对应的代码中。
进一步地,在所述当获取到所述待测项目对应的项目测试请求时,启动预设检测探针,从所述待测项目的源码中获取到所有类之前,还包括:
基于预设的探针部署参数在虚拟机上部署所述检测探针。
进一步地,在所述基于所有所述第二函数的运行结果和预设待测项目的源码信息,得到所述待测项目的测试覆盖度信息之前,所述当获取到所述待测项目对应的项目测试请求时,启动预设检测探针,从所述待测项目的源码中获取到所有类之后,还包括:
获取每个所述类对应的类的标识信息、源码行数信息和函数信息;
基于所述标识信息、所述源码行数信息和所述函数信息,生成预设待测项目的源码信息。
第二方面,本申请实施例提供了一种测试覆盖度信息的获取装置,包括:
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于深圳开源互联网安全技术有限公司,未经深圳开源互联网安全技术有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201910838983.9/2.html,转载请声明来源钻瓜专利网。
- 信息记录介质、信息记录方法、信息记录设备、信息再现方法和信息再现设备
- 信息记录装置、信息记录方法、信息记录介质、信息复制装置和信息复制方法
- 信息记录装置、信息再现装置、信息记录方法、信息再现方法、信息记录程序、信息再现程序、以及信息记录介质
- 信息记录装置、信息再现装置、信息记录方法、信息再现方法、信息记录程序、信息再现程序、以及信息记录介质
- 信息记录设备、信息重放设备、信息记录方法、信息重放方法、以及信息记录介质
- 信息存储介质、信息记录方法、信息重放方法、信息记录设备、以及信息重放设备
- 信息存储介质、信息记录方法、信息回放方法、信息记录设备和信息回放设备
- 信息记录介质、信息记录方法、信息记录装置、信息再现方法和信息再现装置
- 信息终端,信息终端的信息呈现方法和信息呈现程序
- 信息创建、信息发送方法及信息创建、信息发送装置