1.一种代码覆盖率测试方法,其特征在于,包括:在系统测试阶段,分别从代码管理平台获取目标服务的第2版本的代码至第M版本的代码,并对所述第2版本的代码至第M版本的代码中每个版本的代码包括的至少一个代码变更行和所述每个版本的代码包括的至少一个第一目标代码行执行测试代码变更覆盖率的任务,得到M‑1个第一测试结果,所述第一测试结果包括代码变更覆盖率;所述M为大于2的整数;所述每个版本的代码包括的所述第一目标代码行,指从所述每个版本的上一版本的代码包括的至少一个代码变更行中确定出的未执行的代码变更行;
对所述M‑1个第一测试结果中每个第一测试结果包括的代码变更覆盖率进行累加处理,得到代码变更覆盖率累计值,并将所述代码变更覆盖率累计值确定为所述第M版本的代码的代码变更覆盖率;
在回归测试阶段,分别对每个版本的代码包括的至少一个代码变更行以及所述每个版本的代码包括的至少一个第二目标代码行执行测试代码全量覆盖率的任务,得到M‑1个第二测试结果,所述第二测试结果包括代码全量覆盖率;所述第2版本的代码包括的至少一个第二目标代码行,指从第1版本的代码包括的多个代码行中确定出的未执行的至少一个代码行;所述第2版本之后的各版本的代码包括至少一个第二目标代码行,指从所述各版本的上一版本的代码包括的至少一个代码变更行以及所述各版本的上一版本的代码包括的至少一个第二目标代码行中确定出的未执行的至少一个代码行;
对所述M‑1个第二测试结果中每个第二测试结果包括的代码全量覆盖率进行累加处理,得到代码全量覆盖率累计值;
根据所述第M版本的代码的代码变更覆盖率和所述代码全量覆盖率累计值生成代码测试报告文件。
2.根据权利要求1所述的方法,其特征在于,所述方法还包括:根据第M‑2个第一测试结果包括的未执行代码变更行的行信息,从所述第M‑1版本的代码包括的至少一个代码变更行中确定出未执行的至少一个代码变更行作为所述第M版本的代码包括的至少一个第一目标代码行。
3.根据权利要求1或2所述的方法,其特征在于,所述对所述第2版本的代码至第M版本的代码中每个版本的代码包括的至少一个代码变更行和所述每个版本的代码包括的至少一个第一目标代码行执行测试代码变更覆盖率的任务,包括:运行第一测试用例以分别对所述第2版本的代码至第M版本的代码中每个版本的代码包括的至少一个代码变更行以及所述每个版本的代码包括的至少一个第一目标代码行进行功能测试,并调用代码覆盖率统计插件统计代码变更覆盖率,得到M‑1个第一测试结果。
4.根据权利要求3所述的方法,其特征在于,所述方法还包括:确定所述每个版本的代码包括的所述第一目标代码行对应的功能点;
根据功能点与测试场景的对应关系以及所述第一目标代码行对应的功能点,确定所述第一目标代码行对应的第一测试场景;
当所述第一测试用例覆盖的测试场景集合不包括所述第一测试场景时,确定所述第一测试用例未覆盖到所述第一测试场景。
5.根据权利要求1所述的方法,其特征在于,所述方法还包括:根据第M‑2个第二测试结果包括的未执行代码行的行信息,从第M‑1版本的代码包括的至少一个代码变更行和所述第M‑1版本的代码包括的至少一个第二目标代码行中确定出未执行的至少一个代码行,以作为所述第M版本的代码包括的至少一个第二目标行。
6.根据权利要求1或5所述的方法,其特征在于,所述对每个版本的代码包括的至少一个代码变更行以及所述每个版本的代码包括的至少一个第二目标代码行,执行测试代码全量覆盖率的任务,得到M‑1个第二测试结果,包括:运行第二测试用例以对每个版本的代码包括的至少一个代码变更行以及所述每个版本的代码包括的至少一个第二目标代码行进行功能测试,并调用代码覆盖率统计插件统计代码全量覆盖率,得到M‑1个第二测试结果。
7.根据权利要求6所述的方法,其特征在于,所述方法还包括:确定所述每个版本的代码包括的所述第二目标代码行对应的功能点;
根据功能点与测试场景的对应关系以及所述第二目标代码行对应的功能点,确定所述第二目标代码行对应的第二测试场景;
当所述第二测试用例覆盖的测试场景集合不包括所述第二测试场景时,确定所述第二测试用例未覆盖到所述第二测试场景。
8.一种代码覆盖率测试装置,其特征在于,包括:测试模块,用于在系统测试阶段,分别从代码管理平台获取目标服务的第2版本的代码至第M版本的代码,并对所述第2版本的代码至第M版本的代码中每个版本的代码包括的至少一个代码变更行和所述每个版本的代码包括的至少一个第一目标代码行执行测试代码变更覆盖率的任务,得到M‑1个第一测试结果,所述第一测试结果包括代码变更覆盖率;所述M为大于2的整数;所述每个版本的代码包括的所述第一目标代码行,指从所述每个版本的上一版本的代码包括的至少一个代码变更行中确定出的未执行的代码变更行;
处理模块,用于对所述M‑1个第一测试结果中每个第一测试结果包括的代码变更覆盖率进行累加处理,得到代码变更覆盖率累计值,并将所述代码变更覆盖率累计值确定为所述第M版本的代码的代码变更覆盖率;
所述测试模块,还用于在回归测试阶段,分别对每个版本的代码包括的至少一个代码变更行以及所述每个版本的代码包括的至少一个第二目标代码行执行测试代码全量覆盖率的任务,得到M‑1个第二测试结果,所述第二测试结果包括代码全量覆盖率;所述第2版本的代码包括的至少一个第二目标代码行,指从第1版本的代码包括的多个代码行中确定出的未执行的至少一个代码行;所述第2版本之后的各版本的代码包括至少一个第二目标代码行,指从所述各版本的上一版本的代码包括的至少一个代码变更行以及所述各版本的上一版本的代码包括的至少一个第二目标代码行中确定出的未执行的至少一个代码行;
所述处理模块,还用于对所述M‑1个第二测试结果中每个第二测试结果包括的代码全量覆盖率进行累加处理,得到代码全量覆盖率累计值;
所述处理模块,还用于根据所述第M版本的代码的代码变更覆盖率和所述代码全量覆盖率累计值生成代码测试报告文件。
9.一种计算机设备,其特征在于,包括处理器和存储器,所述处理器和所述存储器相互连接,其中,所述存储器用于存储计算机程序指令,所述处理器被配置用于执行所述程序指令,实现如权利要求1‑7任一项所述的方法。
10.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质中存储有计算机程序指令,所述计算机程序指令被处理器执行时,用于执行如权利要求1‑7任一项所述的方法。