覆盖率的获取方法、装置、计算机存储介质及电子装置制造方法及图纸

技术编号:37448217 阅读:22 留言:0更新日期:2023-05-06 09:20
本申请公开了一种覆盖率的获取方法、装置、计算机存储介质及电子装置,涉及应用测试领域,该方法包括:获取操作系统的源码以及第一目标应用的源码,并利用操作系统中的目标类触发类加载进程;在类加载进程运行至链接阶段的情况下,将探针数组注入到操作系统的源码中,得到修改后的操作系统,其中,修改后的操作系统包含修改后的目标类;利用探针数组获取第一目标应用在修改后的操作系统中的覆盖率,并将覆盖率传递至远程服务器。通过本申请,解决了相关技术中难以采集加壳应用在操作系统中的覆盖率的问题。的覆盖率的问题。的覆盖率的问题。

【技术实现步骤摘要】
覆盖率的获取方法、装置、计算机存储介质及电子装置


[0001]本申请涉及应用测试领域,具体而言,涉及一种覆盖率的获取方法、装置、计算机存储介质及电子装置。

技术介绍

[0002]在应用开发阶段,需要对应用进行不断测试才可以供用户使用,而应用的完整性测试则需要应用的源代码才可以进行。但是在测试过程中,由于代码的数量庞大,哪些代码被测试过,而哪些代码没有被测试,则需要测试人员重点关注,因此,覆盖率这一概念应运而生,覆盖率是衡量软件测试工作充分性和完整性的指标,是已被执行的代码占总体待测试代码的比例,所以覆盖率数据的采集是测试环节必不可少的一步。
[0003]另一方面,应用的源代码是一个应用的核心,源码的泄露则是非常严重的危机,为了保护源码,大多会采用加壳策略,而测试时,测试人员使用的应用程序包也是采用加壳技术的,以此来保证最小代码泄露范围。此时会面临由于加壳,无法采集应用中的覆盖率,进而分析应用的多个文件是否存在异常。
[0004]针对相关技术中难以采集加壳应用在操作系统中的覆盖率的问题,目前尚未提出有效的解决方案。
专利技本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种覆盖率的获取方法,其特征在于,包括:获取操作系统的源码以及第一目标应用的源码,并利用所述操作系统中的目标类触发类加载进程;在所述类加载进程运行至链接阶段的情况下,将探针数组注入到所述操作系统的源码中,得到修改后的操作系统,其中,所述修改后的操作系统包含修改后的目标类;利用所述探针数组获取所述第一目标应用在所述修改后的操作系统中的覆盖率,并将所述覆盖率传递至远程服务器,其中,所述覆盖率是指已经运行代码与待运行代码的比值数据,所述远程服务器与所述第一目标应用所在的服务器相连,由所述远程服务器对所述覆盖率进行数据格式的解析,得到所述第一目标应用的代码覆盖情况。2.根据权利要求1所述的方法,其特征在于,在所述类加载进程运行至链接阶段的情况下,将探针数组注入到所述操作系统的源码中,得到修改后的操作系统包括:获取预设探针数组,初始化所述预设探针数组的数值,得到所述探针数组;将所述探针数组写入到所述操作系统的源码中待执行的方法的代码中,得到所述修改后的操作系统,其中,在所述第一目标应用运行后,修改所述探针数组的数值赋值。3.根据权利要求2所述的方法,其特征在于,初始化后的所述预设探针数组的数值为0,利用所述探针数组获得所述第一目标应用在所述修改后的操作系统中的覆盖率包括:在所述修改后的操作系统中运行所述第一目标应用时,获取各个分支代码在所述探针数组中对应的数值的赋值结果;在各个分支代码在所述探针数组中对应的数值均为1的情况下,进行所述覆盖率的采集,得到所述第一目标应用在所述修改后的操作系统中的覆盖率。4.根据权利要求1所述的方法,其特征在于,将所述覆盖率传递至远程服务器包括:在所述第一目标应用启动时,获取目标线程,其中,所述目标线程用于传输所述覆盖率;将所述目标线程与所述远程服务器建立长连接;通过所述目标线程将获取到的所述覆盖率发送给所述远程服务器。5.根据权利要求1所述的方法,其特征在于,获取操作系统的源码包括:在所述操作系统中运行所述第一目标应用以及脱壳程序;...

【专利技术属性】
技术研发人员:周朝信苏静黄震人熊小庆
申请(专利权)人:中国工商银行股份有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1