一种代码覆盖率的测试方法技术

技术编号:39407809 阅读:19 留言:0更新日期:2023-11-19 15:59
本公开是关于一种代码覆盖率的测试方法

【技术实现步骤摘要】
一种代码覆盖率的测试方法、装置及存储介质


[0001]本公开涉及测试
,尤其涉及一种代码覆盖率的测试方法

装置及存储介质


技术介绍

[0002]终端出厂之前都需要进行测试,以精准监控应用程序的代码是否能够支持各种应用场景,是否能够与终端的硬件适配

[0003]终端中的一个应用程序的代码包括多种功能,但是不同终端由于硬件的限制,不能支持所有的功能,因此,在不同终端对应的测试版本中所支持的功能是不同的,比如相机应用在某些机型或者应用场景可能只用到了部分功能,但是实现其他功能的代码也会耦合在该部分功能的代码逻辑中

因此,在对代码进行代码覆盖率测试时,会出现很多代码未覆盖执行的情况,导致代码覆盖率低,并且难以排查覆盖率的原因


技术实现思路

[0004]为克服相关技术中存在的问题,本公开提供一种代码覆盖率的测试方法

装置及存储介质

[0005]根据本公开实施例的第一方面,提供了一种代码覆盖率的测试方法,所述代码本文档来自技高网...

【技术保护点】

【技术特征摘要】
1.
一种代码覆盖率的测试方法,其特征在于,所述代码覆盖率的测试方法包括:获取待测试代码支持的测试功能集的配置信息;从待测试代码支持的测试功能集中,获取待测试终端支持的目标功能的配置信息;其中所述目标功能是所述待测试终端支持的至少一项待测试功能;根据所述目标功能的配置信息和所述测试功能集的配置信息,对所述待测试代码进行重新编译,以获得目标测试代码;使用目标测试代码对所述待测试终端的目标功能进行代码覆盖率测试
。2.
根据权利要求1所述的代码覆盖率的测试方法,其特征在于,所述根据所述目标功能的配置信息和所述测试功能集的配置信息,对所述待测试代码进行重新编译,以获得目标测试代码包括:确定所述待测试代码中需要被忽略的测试功能的配置信息;根据所述需要被忽略的测试功能的配置信息,对所述待测试代码进行重新编译,以获得目标测试代码
。3.
根据权利要求1所述的代码覆盖率的测试方法,其特征在于,所述从待测试代码支持的测试功能集中,获取待测试终端支持的目标功能的配置信息,包括:获取所述待测试代码支持的多个测试版本,每个所述测试版本被执行时实现至少一个功能,每个所述测试版本被执行时实现的功能不同;获取每个所述测试版本支持的测试功能的配置信息;基于所述测试版本支持的测试功能的配置信息,获取用于实现所述测试功能的包名

类名和注释信息
。4.
根据权利要求3所述的代码覆盖率的测试方法,其特征在于,所述从待测试代码支持的测试功能集中,获取待测试终端支持的目标功能的配置信息,包括:获取所述待测试终端支持的测试版本;根据所述测试版本,确定所述目标功能的配置信息
。5.
根据权利要求3所述的代码覆盖率的测试方法,其特征在于,确定所述待测试代码中需要被忽略的测试功能的配置信息,包括:比较所述目标功能的配置信息和所述测试功能集的配置信息,获得所述测试功能集中与所述目标功能的配置信息不一致的配置信息;根据与所述目标功能的配置信息不一致的配置信息,确定所述待测试代码中需要被忽略的测试功能;获得用于实现所述需要被忽略的测试功能的包名

类名和注释信息
。6.
根据权利要求5所述的代码覆盖率的测试方法,其特征在于,所述对所述待测试代码进行重新编译,获得目标测试代码,包括:根据所述需要被忽略的测试功能的包名

类名和注释信息,删除所述需要被忽略的测试功能对应的代码,获得目标测试代码
。7.
根据权利要求1所述的代码覆盖率的测试方法,其特征在于,所述使用目标测试代码对所述待测试终端的目标功能进行代码覆盖率测试,包括:获取所述待测试终端支持的目标场景信息集合;对所述目标场景信息集合中的每一个目标场景,使用所述目标测试代码进行测试

8.
根据权利要求7所述的代码覆盖率的测试方法,其特征在于,所述代码覆盖率的测试方法,还包括:获取所述目标测试代码运行的测试结果,确定所述目标测试代码的代码覆盖率;若所述代码覆盖率小于或等于预设阈值,对所述目标测试代码进行排查;根据排查结果,对所述目标场景信息集合和
/
或所述待测试代码支持的测试功能集的配置信息进行更新
。9.
一种代码覆盖率的测试装置,其特征在于,所述代码覆盖率的测试装置包括:第一获取模块,被配置为获取待测试代码支持的测试功能集的配置信息;第二获取模块,被配置为从待测试代码支持的测...

【专利技术属性】
技术研发人员:张伟张海坡高川
申请(专利权)人:北京小米移动软件有限公司
类型:发明
国别省市:

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

1