1.一种测试用例范围确定方法,应用于电子装置,其特征在于,该方法包括:S1、记录用户在系统的运行环境下执行操作行为时的第一代码覆盖数据,分析所述第一代码覆盖数据推导出用户的操作行为,并初步确定测试用例集;
S2、接收执行所述测试用例集的指令,记录在系统的测试环境下执行所述测试用例集时的第二代码覆盖数据;
S3、对所述第一代码覆盖数据及所述第二代码覆盖数据进行分析,得到所述第一代码覆盖数据及所述第二代码覆盖数据之间的差异,并判断所述差异是否满足预设条件;
S4、当所述第一代码覆盖数据及所述第二代码覆盖数据之间的差异不满足预设条件时,定位所述第一代码覆盖数据及所述第二代码覆盖数据之间的差异代码,根据所述差异代码调整所述测试用例集,执行所述调整后的测试用例集,得到更新后的第二代码覆盖数据,流程返回至S3;及
S5、当所述第一代码覆盖数据及所述第二代码覆盖数据之间的差异满足预设条件时,确定所述测试用例集为最终的测试用例集;
所述记录用户在系统的运行环境下执行操作行为时的第一代码覆盖数据包括:记录用户在系统的运行环境下执行的操作行为,所述操作行为包括用户点击、执行系统的某个功能模块或执行某些操作流程;
获取被用户执行的功能模块或操作流程对应的系统代码,基于所述系统代码生成第一代码覆盖数据;
所述S3包括:
分别读取所述第一代码覆盖数据中包含的各包在所述第一代码覆盖数据和所述第二代码覆盖数据中的覆盖率;
分别计算各包在所述第一代码覆盖数据和所述第二代码覆盖数据中的覆盖率的差异度;及
判断所述各包的差异度是否均小于或等于预设阈值;
所述差异度的计算公式为:M=(A‑B)/A,其中,M为某包在第一代码覆盖数据中的覆盖率与第二代码覆盖率数据中的覆盖率之间的差异度,A为该包在第一代码覆盖数据中的覆盖率,B为该包在第二代码覆盖数据中的覆盖率。
2.如权利要求1所述的测试用例范围确定方法,其特征在于,所述“当所述第一代码覆盖数据及所述第二代码覆盖数据之间的差异不满足预设条件时,定位所述第一代码覆盖数据及所述第二代码覆盖数据之间的差异代码”的步骤包括:当所述各包中包含差异度大于预设阈值的一个或多个包时,筛选出所述一个或多个包;
分别对比所述一个或多个包中包含的类在所述第一代码覆盖数据及所述第二代码覆盖数据中的覆盖率,筛选出在所述第一代码覆盖数据及所述第二代码覆盖数据中的覆盖率不同的一个或多个类;
分别对比所述一个或多个类中包含的方法在所述第一代码覆盖数据及所述第二代码覆盖数据中的覆盖率,筛选出在所述第一代码覆盖数据及所述第二代码覆盖数据中的覆盖率不同的一个或多个方法;及
分别对比所述一个或多个方法中包含的代码行在所述第一代码覆盖数据及所述第二代码覆盖数据中的覆盖率,筛选出在所述第一代码覆盖数据及所述第二代码覆盖数据中的覆盖率不同的代码行,确定所述第一代码覆盖数据及所述第二代码覆盖数据之间的差异代码。
3.如权利要求2所述的测试用例范围确定方法,其特征在于,所述第一代码覆盖数据包括:用户在生产环境下执行所述操作流程,系统代码中被覆盖的包、类、方法及行信息。
4.如权利要求3所述的测试用例范围确定方法,其特征在于,所述第二代码覆盖数据包括:在测试环境下执行所述测试用例集,系统代码中被覆盖的包、类、方法及行信息。
5.一种电子装置,其特征在于,该装置包括:存储器、处理器,所述存储器上存储有可在所述处理器上运行的测试用例范围确定程序,该程序被所述处理器执行时实现如下步骤:A1、记录用户在系统的运行环境下执行操作行为时的第一代码覆盖数据,分析所述第一代码覆盖数据推导出用户的操作行为,并初步确定测试用例集;
A2、接收执行所述测试用例集的指令,记录在系统的测试环境下执行所述测试用例集时的第二代码覆盖数据;
A3、对所述第一代码覆盖数据及所述第二代码覆盖数据进行分析,得到所述第一代码覆盖数据及所述第二代码覆盖数据之间的差异,并判断所述差异是否满足预设条件;
A4、当所述第一代码覆盖数据及所述第二代码覆盖数据之间的差异不满足预设条件时,定位所述第一代码覆盖数据及所述第二代码覆盖数据之间的差异代码,根据所述差异代码调整所述测试用例集,执行所述调整后的测试用例集,得到更新后的第二代码覆盖数据,流程返回至A3;及
A5、当所述第一代码覆盖数据及所述第二代码覆盖数据之间的差异满足预设条件时,确定所述测试用例集为最终的测试用例集;
所述记录用户在系统的运行环境下执行操作行为时的第一代码覆盖数据包括:记录用户在系统的运行环境下执行的操作行为,所述操作行为包括用户点击、执行系统的某个功能模块或执行某些操作流程;
获取被用户执行的功能模块或操作流程对应的系统代码,基于所述系统代码生成第一代码覆盖数据;
所述A3包括:
分别读取所述第一代码覆盖数据中包含的各包在所述第一代码覆盖数据和所述第二代码覆盖数据中的覆盖率;
分别计算各包在所述第一代码覆盖数据和所述第二代码覆盖数据中的覆盖率的差异度;及
判断所述各包的差异度是否均小于或等于预设阈值;
所述差异度的计算公式为:M=(A‑B)/A,其中,M为某包在第一代码覆盖数据中的覆盖率与第二代码覆盖率数据中的覆盖率之间的差异度,A为该包在第一代码覆盖数据中的覆盖率,B为该包在第二代码覆盖数据中的覆盖率。
6.如权利要求5所述的电子装置,其特征在于,所述“当所述第一代码覆盖数据及所述第二代码覆盖数据之间的差异不满足预设条件时,定位所述第一代码覆盖数据及所述第二代码覆盖数据之间的差异代码”的步骤包括:当所述各包中包含差异度大于预设阈值的一个或多个包时,筛选出所述一个或多个包;
分别对比所述一个或多个包中包含的类在所述第一代码覆盖数据及所述第二代码覆盖数据中的覆盖率,筛选出在所述第一代码覆盖数据及所述第二代码覆盖数据中的覆盖率不同的一个或多个类;
分别对比所述一个或多个类中包含的方法在所述第一代码覆盖数据及所述第二代码覆盖数据中的覆盖率,筛选出在所述第一代码覆盖数据及所述第二代码覆盖数据中的覆盖率不同的一个或多个方法;及
分别对比所述一个或多个方法中包含的代码行在所述第一代码覆盖数据及所述第二代码覆盖数据中的覆盖率,筛选出在所述第一代码覆盖数据及所述第二代码覆盖数据中的覆盖率不同的代码行,确定所述第一代码覆盖数据及所述第二代码覆盖数据之间的差异代码。
7.如权利要求6所述的电子装置,其特征在于,所述第一代码覆盖数据包括:用户在生产环境下执行所述操作流程,系统代码中被覆盖的包、类、方法及行信息;及所述第二代码覆盖数据包括:在测试环境下执行所述测试用例集,系统代码中被覆盖的包、类、方法及行信息。
8.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质上存储有测试用例范围确定程序,该程序被处理器执行时实现如权利要求1至4中任一项所述的测试用例范围确定方法的步骤。