代码测试覆盖率显示方法、装置、计算机设备及存储介质制造方法及图纸

技术编号:28034710 阅读:28 留言:0更新日期:2021-04-09 23:16
本发明专利技术涉及人工智能技术领域,应用于代码的性能测试技术领域,公开了一种代码测试覆盖率显示方法、装置、计算机设备和存储介质。方法包括:从代码仓库管理系统中获取功能分支代码对应的主分支代码;确定功能分支的全量代码和主分支代码的增量代码;对功能分支的全量代码进行插桩处理得到测试代码文件;通过预设测试用例对代码文件进行测试,获取执行到全量代码的第一代码时的第一运行信息,和执行到增量代码的第二代码行时的第二运行信息;利用第一运行信息获取执行到第一代码行时的全量代码覆盖率;利用第二运行信息获取执行到第二代码行时的增量代码覆盖率;实时显示全量代码覆盖率和实时显示增量代码覆盖率。

【技术实现步骤摘要】
代码测试覆盖率显示方法、装置、计算机设备及存储介质
本专利技术涉及人工智能
,应用于代码性能测试领域,尤其涉及一种代码测试覆盖率显示方法、装置、计算机设备及存储介质。
技术介绍
代码覆盖率,指的是进行代码测试时,代码被执行到的比例或程度,通过代码覆盖率,一定程度上可以了解代码的质量。传统的代码覆盖率工具中或者开源框架,只能做到异步统计被测试代码对应的全量代码的代码覆盖率,从而生成全量代码的代码覆盖率报告,功能比较单一,应用场景较为简单,然而,被测试代码对应的增量代码部分是与主分支代码的区别所在,传统异步统计的方式仅得到全量代码覆盖率且未异步获得,获得的代码覆盖率参考价值不高,实用性较低。
技术实现思路
本专利技术实施例提供一种代码测试覆盖率显示方法、装置、计算机设备及存储介质,以解决传统的代码覆盖率工具中获得的代码覆盖率参考价值不高,实用性较低的技术问题。一种代码测试覆盖率显示方法,包括:当接收到覆盖率分析指令后,实时从代码仓库管理系统中获取功能分支代码对应的主分支代码;获取所述功能分支对应的全本文档来自技高网...

【技术保护点】
1.一种代码测试覆盖率显示方法,其特征在于,包括:/n当接收到覆盖率分析指令后,从代码仓库管理系统中获取功能分支对应的主分支代码;/n获取所述功能分支对应的全量代码,根据所述全量代码和所述主分支代码,确定所述功能分支的增量代码;/n对所述功能分支的全量代码进行代码插桩处理,得到测试代码文件;/n执行所述测试代码文件,以通过插桩代码获取执行到所述全量代码的第一代码行时对应的第一运行信息,以及执行到所述增量代码的第二代码行时对应的第二运行信息,所述第一代码行为所述全量代码的任一代码行,所述第二代码行为所述增量代码的任一代码行;/n根据所述第一运行信息,获取执行到所述第一代码行时对应的全量代码覆盖率...

【技术特征摘要】
1.一种代码测试覆盖率显示方法,其特征在于,包括:
当接收到覆盖率分析指令后,从代码仓库管理系统中获取功能分支对应的主分支代码;
获取所述功能分支对应的全量代码,根据所述全量代码和所述主分支代码,确定所述功能分支的增量代码;
对所述功能分支的全量代码进行代码插桩处理,得到测试代码文件;
执行所述测试代码文件,以通过插桩代码获取执行到所述全量代码的第一代码行时对应的第一运行信息,以及执行到所述增量代码的第二代码行时对应的第二运行信息,所述第一代码行为所述全量代码的任一代码行,所述第二代码行为所述增量代码的任一代码行;
根据所述第一运行信息,获取执行到所述第一代码行时对应的全量代码覆盖率;并,根据所述第二运行信息,获取执行到所述第二代码行时对应的增量代码覆盖率;
实时显示执行到所述第一代码行时对应的全量代码覆盖率,并在所述第二代码行时对应的增量代码覆盖率。


2.如权利要求1所述的代码测试覆盖率显示方法,其特征在于,所述根据所述第一运行信息,获取执行到所述第一代码行时对应的全量代码覆盖率,包括:
解析所述第一运行信息,获取执行到所述第一代码行时,所述第一代码行之前的代码被执行过至少一次的类的数量,以及所述全量代码中所包含的所有类的数量;
计算所述第一代码行之前的代码被执行过至少一次的类的数量,与所述全量代码中所包含的所有类的数量的比值,获得执行到所述第一代码行时对应的全量代码覆盖率;
所述根据所述第二运行信息,获取执行到所述第二代码行时对应的增量代码覆盖率,包括:
解析所述第二运行信息,获取执行到所述第二代码行时,所述第二代码行之前的代码被执行过至少一次的类的数量,以及所述增量代码中所包含的所有类的数量;
计算所述第二代码行之前的代码被执行过至少一次的类的数量,与所述增量代码中所包含的所有类的数量的比值,获得执行到所述第二代码行时对应的增量代码覆盖率。


3.如权利要求1所述的代码测试覆盖率显示方法,其特征在于,所述从代码仓库管理系统中获取所述功能分支对应的主分支代码之前,所述方法还包括:
接收所述代码发布工具反馈的覆盖率分析指令,所述覆盖率分析指令为用户通过所述代码发布工具,发布所述功能分支的代码至测试环境进行测试时所发送。


4.如权利要求1所述的代码测试覆盖率显示方法,其特征在于,所述第一运行信息包括执行到所述第一代码行时的未覆盖代码信息和已覆盖代码信息,所述对所述测试代码文件进行测试,以通过插桩代码获取执行到全量代码的第一代码时对应的第一运行信息之后,还包括:
利用所述未覆盖代码信息和已覆盖代码信息,对应确定执行到所述第一代码行时,所述全量代码中的未覆盖代码和已覆盖代码;
实时对所述未覆盖代码和已覆盖代码进行区别染色显示。


5.如权利要求1-4任一项所述的代码测试覆盖率显示方法,其特征在于,所述根据所述第一运行信息,获取执行到所述第一代码行时对应的全量代码覆盖率;并,根据所述第二运行信息,获取执行到所述第二代码行时对应的增量代码覆盖率之后,所述方法还包括:
按照设定的...

【专利技术属性】
技术研发人员:贺建雄吴学亮梅强强赵冬伟
申请(专利权)人:平安银行股份有限公司
类型:发明
国别省市:广东;44

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

1