[发明专利]代码覆盖率收集方法和装置有效

专利信息
申请号: 201611248183.4 申请日: 2016-12-29
公开(公告)号: CN106874187B 公开(公告)日: 2020-09-11
发明(设计)人: 符阳辉;任洪平 申请(专利权)人: 腾讯科技(深圳)有限公司
主分类号: G06F11/36 分类号: G06F11/36
代理公司: 广州华进联合专利商标代理有限公司 44224 代理人: 何平;邓云鹏
地址: 518000 广东省深圳*** 国省代码: 广东;44
权利要求书: 查看更多 说明书: 查看更多
摘要:
搜索关键词: 代码 覆盖率 收集 方法 装置
【权利要求书】:

1.一种代码覆盖率收集方法,应用在覆盖率收集终端服务器,其特征在于,所述覆盖率收集终端服务器上运行业务平台,为用户使用的终端提供业务服务,所述覆盖率收集终端服务器在为终端提供业务服务的过程中,对提供业务服务过程中执行的源文件的源代码进行覆盖率数据的收集,所述方法包括步骤:

接收终端发送的业务请求,所述业务请求包括应用标识;

根据所述业务请求获取与所述应用标识对应的源文件、源文件标识以及所述源文件的语法树信息;

将所述源文件的源代码加载到内存;

执行加载到内存的所述源代码,并在所述源代码的执行过程中,基于所述语法树信息记录执行所述源代码的代码行的覆盖率数据;

向覆盖率收集中心服务器发送覆盖率上报信息,所述覆盖率上报信息包括所述源文件标识、所述覆盖率数据,由所述覆盖率收集中心服务器根据各覆盖率收集终端服务器上传的覆盖率上报信息确定所述源文件的代码覆盖率。

2.根据权利要求1所述的代码覆盖率收集方法,其特征在于,还包括步骤:

在将所述源文件的源代码加载到内存时,基于所述语法树信息对加载到内存的源代码进行插桩。

3.根据权利要求1或2所述的代码覆盖率收集方法,其特征在于,所述语法树信息包括函数定义语句、分支语句以及代码行中的至少一种,所述代码覆盖率包括函数覆盖率、分支语句覆盖率以及代码行覆盖率中的至少一种。

4.一种代码覆盖率收集方法,应用在覆盖率收集中心服务器,其特征在于,包括步骤:

接收各覆盖率收集终端服务器发送的覆盖率上报信息,所述覆盖率上报信息包括源文件标识以及对应的覆盖率数据,所述覆盖率数据为所述覆盖率收集终端服务器在接收到终端发送的包含应用标识的业务请求时,获取与所述应用标识对应的源文件、所述源文件标识以及所述源文件的语法树信息,并将所述源文件的源代码加载到内存后,在加载到内存的所述源代码的执行过程中基于所述语法树信息记录执行所述源代码的代码行的覆盖率数据;所述覆盖率收集终端服务器上运行业务平台,为用户使用的终端提供业务服务,所述覆盖率收集终端服务器在为终端提供业务服务的过程中,对提供业务服务过程中执行的源文件的源代码进行覆盖率数据的收集;

根据各覆盖率收集终端服务器发送的所述覆盖率上报信息,确定所述源文件标识对应的源文件的代码覆盖率。

5.根据权利要求4所述的代码覆盖率收集方法,其特征在于,包括下述三项中的至少一项:

通过将各所述覆盖率收集终端服务器上传的所述源文件标识对应的覆盖率数据与所述源文件标识对应的源代码进行比较,根据比较结果确定所述源文件标识对应的源文件的代码覆盖率;

还包括步骤:根据各所述覆盖率收集终端服务器发送的所述覆盖率上报信息,对所述源文件标识对应的源代码中、各所述覆盖率收集终端服务器均未执行的代码行进行标记;根据标记的代码行、所述代码覆盖率生成可视化代码覆盖率报告;

所述语法树信息包括函数定义语句、分支语句以及代码行中的至少一种,所述代码覆盖率包括函数覆盖率、分支语句覆盖率以及代码行覆盖率中的至少一种。

6.一种代码覆盖率收集装置,设置在覆盖率收集终端服务器,其特征在于,所述覆盖率收集终端服务器上运行业务平台,为用户使用的终端提供业务服务,所述覆盖率收集终端服务器在为终端提供业务服务的过程中,对提供业务服务过程中执行的源文件的源代码进行覆盖率数据的收集,所述装置包括:

请求接收模块,用于接收终端发送的业务请求,所述业务请求包括应用标识;

文件及信息获取模块,用于根据所述业务请求获取与所述应用标识对应的源文件、源文件标识以及所述源文件的语法树信息;

代码加载模块,用于将所述源文件的源代码加载到内存;

数据记录模块,用于在加载到内存的所述源代码的执行过程中,基于所述语法树信息记录执行所述源代码的代码行的覆盖率数据;

信息上报模块,用于向覆盖率收集中心服务器发送覆盖率上报信息,所述覆盖率上报信息包括所述源文件标识、所述覆盖率数据,由所述覆盖率收集中心服务器根据各覆盖率收集终端服务器上传的覆盖率上报信息确定所述源文件的代码覆盖率。

下载完整专利技术内容需要扣除积分,VIP会员可以免费下载。

该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于腾讯科技(深圳)有限公司,未经腾讯科技(深圳)有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服

本文链接:http://www.vipzhuanli.com/pat/books/201611248183.4/1.html,转载请声明来源钻瓜专利网。

×

专利文献下载

说明:

1、专利原文基于中国国家知识产权局专利说明书;

2、支持发明专利 、实用新型专利、外观设计专利(升级中);

3、专利数据每周两次同步更新,支持Adobe PDF格式;

4、内容包括专利技术的结构示意图流程工艺图技术构造图

5、已全新升级为极速版,下载速度显著提升!欢迎使用!

请您登陆后,进行下载,点击【登陆】 【注册】

关于我们 寻求报道 投稿须知 广告合作 版权声明 网站地图 友情链接 企业标识 联系我们

钻瓜专利网在线咨询

周一至周五 9:00-18:00

咨询在线客服咨询在线客服
tel code back_top