[发明专利]软件代码测试覆盖率的检查方法及装置有效
申请号: | 201810440103.8 | 申请日: | 2018-05-09 |
公开(公告)号: | CN110471829B | 公开(公告)日: | 2023-07-18 |
发明(设计)人: | 石晓海;秦承刚;张永超 | 申请(专利权)人: | 阿里巴巴集团控股有限公司 |
主分类号: | G06F11/36 | 分类号: | G06F11/36 |
代理公司: | 北京清源汇知识产权代理事务所(特殊普通合伙) 11644 | 代理人: | 冯德魁;窦晓慧 |
地址: | 英属开曼群岛大开*** | 国省代码: | 暂无信息 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 软件 代码 测试 覆盖率 检查 方法 装置 | ||
1.一种软件代码测试覆盖率的检查方法,其特征在于,包括:
根据测试集对包含有补丁代码段的软件代码进行测试,所述测试集用于对待进行功能测试的补丁进行测试;
确定所述补丁代码段被测试的覆盖率,所述补丁代码段被测试的覆盖率用于衡量所述补丁代码段在测试过程中被执行的代码量;
根据所述补丁代码段被测试的覆盖率,确定所述补丁代码段的覆盖率测试结果,如果所述补丁代码段未通过覆盖率测试,则对包含有补丁代码段的软件代码再次进行测试,包括:针对所述补丁代码段中没有被测试的代码,生成补充测试集;将所述补充测试集更新到所述测试集中;根据更新后的测试集对包含有补丁代码段的软件代码再次进行测试;
其中,如果所述对包含有补丁代码段的软件代码再次进行测试后,所述补丁代码段被测试的覆盖率达到代码段覆盖率阈值,则所述方法还包括:计算包含有补丁代码段的软件代码的整体覆盖率;如果所述包含有补丁代码段的软件代码的整体覆盖率达到整体覆盖率阈值,则获取所述包含有补丁代码段的软件代码被测试运行时所生成的第一运行参数,所述第一运行参数用于表征所述包含有补丁代码段的软件代码被测试运行时的运行质量。
2.根据权利要求1所述的方法,其特征在于,所述确定所述补丁代码段被测试的覆盖率,包括:
获取所述补丁代码段的执行信息;
根据所述执行信息确定所述补丁代码段被测试的覆盖率。
3.根据权利要求2所述的方法,其特征在于,所述执行信息包括以下至少一项:
所述补丁代码段中被执行的代码的行号;
所述补丁代码段中被执行的代码的行数;
所述补丁代码段中每行代码被执行的次数。
4.根据权利要求3所述的方法,其特征在于,所述根据所述执行信息确定所述补丁代码段被测试的覆盖率,包括:
根据所述补丁代码段中被执行的代码的行号,确定所述补丁代码段中被执行的代码的行数,将所述补丁代码段中被执行的代码的行数相对于所述补丁代码段中所有代码的行数的比值,作为所述补丁代码段被测试的覆盖率;或者,
确定所述补丁代码段中被执行的代码的行数,将所述补丁代码段中被执行的代码的行数与所述补丁代码段中所有代码的行数的比值,作为所述补丁代码段被测试的覆盖率;或者,
根据所述补丁代码段中每行代码被执行的次数,确定所述补丁代码段中被执行的代码的行数,将所述补丁代码段中被执行的代码的行数相对于所述补丁代码段中所有代码的行数的比值,作为所述补丁代码段被测试的覆盖率。
5.根据权利要求1所述的方法,其特征在于,所述根据所述补丁代码段被测试的覆盖率,确定所述补丁代码段的覆盖率测试结果,包括:
如果所述补丁代码段被测试的覆盖率达到代码段覆盖率阈值,则确定所述补丁代码段通过覆盖率测试;
如果所述补丁代码段被测试的覆盖率未达到代码段覆盖率阈值,则确定所述补丁代码段未通过覆盖率测试。
6.根据权利要求1所述的方法,其特征在于,所述针对所述补丁代码段中没有被测试的代码,生成补充测试集,包括:
根据所述补丁代码段的标识,确定所述补丁代码段对应的上传者的标识;
根据所述上传者的标识,通知所述上传者针对所述补丁代码段中未被测试覆盖的代码生成补充测试集。
7.根据权利要求1所述的方法,其特征在于,所述方法还包括:
如果所述第一运行参数达到第一运行指标阈值,则确定所述包含有补丁代码段的软件代码通过运行质量测试。
8.根据权利要求5所述的方法,其特征在于,如果所述补丁代码段通过覆盖率测试,则所述方法还包括:
获取所述补丁代码段被测试运行时所生成的第二运行参数,所述第二运行参数用于表征所述补丁代码段被测试运行时的运行质量。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于阿里巴巴集团控股有限公司,未经阿里巴巴集团控股有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201810440103.8/1.html,转载请声明来源钻瓜专利网。