1.一种单元测试覆盖率生成方法,其特征在于,所述方法包括:S1:基于业务逻辑对单元测试过程中的复用测试代码块进行分包处理;
S2:基于分包处理后得到的各个分包的数据,计算预测覆盖率数据集误差为第一误差;
S3:分别对分包处理后得到的各个分包进行覆盖率测试,并计算得到测试覆盖率数据集误差为第二误差;
S4:判断所述第一误差和所述第二误差的均方根误差的差值绝对值是否大于预设覆盖率标准值;
若所述差值绝对值小于或等于所述预设覆盖率标准值,则对所述预测覆盖率数据集进行输出,若所述差值绝对值大于所述预设覆盖率标准值,则依次提高所述业务逻辑的细化程度对分包处理后得到的各个分包进行再分包处理,并循环执行S2-S4直至所述差值绝对值小于或等于所述预设覆盖率标准值。
2.如权利要求1所述的方法,其特征在于,采用以下公式计算得到所述第一误差:YP=t1x[第一分包别名]+t2x[第二分包别名]+…+tnx[第n分包别名]+E其中,YP为所述第一误差,x[第n分包别名]为第n分包的数据,tn为与x[第n分包别名]对应的正交参数,E为残差因子,n为分包的数量。
3.如权利要求1所述的方法,其特征在于,采用以下公式计算得到所述第二误差:其中,F为所述第二误差,x′∈[x0′,x1′...xn′],[x0′,x1′...xn′]为测试覆盖率数据集,n′为所述测试覆盖率数据集包含的元素的数量。
4.如权利要求1所述的方法,其特征在于,采用以下公式获得所述差值绝对值:其中,σ为所述差值绝对值,YP为所述第一误差,F为所述第二误差。
5.如权利要求1所述的方法,其特征在于,所述分别对分包处理后得到的各个分包进行覆盖率测试,包括:分别对分包处理后得到的各个分包进行基于Java虚拟机单元测试或设备测试的覆盖率测试。
6.如权利要求1所述的方法,其特征在于,所述预设覆盖率标准值的取值范围为0.1~
0.5。
7.一种单元测试覆盖率生成装置,其特征在于,所述装置包括:分包模块,用于执行S1:基于业务逻辑对单元测试过程中的复用测试代码块进行分包处理;
第一计算模块,用于执行S2:基于分包处理后得到的各个分包的数据,计算预测覆盖率数据集误差为第一误差;
第二计算模块,用于执行S3:分别对分包处理后得到的各个分包进行覆盖率测试,并计算得到测试覆盖率数据集误差为第二误差;
判断模块,用于执行S4:判断所述第一误差和所述第二误差的均方根误差的差值绝对值是否大于预设覆盖率标准值;
处理模块,用于若所述差值绝对值小于或等于所述预设覆盖率标准值,则对所述预测覆盖率数据集进行输出,若所述差值绝对值大于所述预设覆盖率标准值,则依次提高所述业务逻辑的细化程度对分包处理后得到的各个分包进行再分包处理,并循环执行S2-S4直至所述差值绝对值小于或等于所述预设覆盖率标准值。
8.如权利要求7所述的装置,其特征在于,采用以下公式计算得到所述第一误差:YP=t1x[第一分包别名]+t2x[第二分包别名]+…+tnx[第n分包别名]+E其中,YP为所述第一误差,x[第n分包别名]为第n分包的数据,tn为与x[第n分包别名]对应的正交参数,E为残差因子,n为分包的数量。
9.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,该程序被处理器执行时实现以下步骤:S1:基于业务逻辑对单元测试过程中的复用测试代码块进行分包处理;
S2:基于分包处理后得到的各个分包的数据,计算预测覆盖率数据集误差为第一误差;
S3:分别对分包处理后得到的各个分包进行覆盖率测试,并计算得到测试覆盖率数据集误差为第二误差;
S4:判断所述第一误差和所述第二误差的均方根误差的差值绝对值是否大于预设覆盖率标准值;
若所述差值绝对值小于或等于所述预设覆盖率标准值,则对所述预测覆盖率数据集进行输出,若所述差值绝对值大于所述预设覆盖率标准值,则依次提高所述业务逻辑的细化程度对分包处理后得到的各个分包进行再分包处理,并循环执行S2-S4直至所述差值绝对值小于或等于所述预设覆盖率标准值。
10.一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,其特征在于,所述处理器执行所述程序时实现以下步骤:S1:基于业务逻辑对单元测试过程中的复用测试代码块进行分包处理;
S2:基于分包处理后得到的各个分包的数据,计算预测覆盖率数据集误差为第一误差;
S3:分别对分包处理后得到的各个分包进行覆盖率测试,并计算得到测试覆盖率数据集误差为第二误差;
S4:判断所述第一误差和所述第二误差的均方根误差的差值绝对值是否大于预设覆盖率标准值;
若所述差值绝对值小于或等于所述预设覆盖率标准值,则对所述预测覆盖率数据集进行输出,若所述差值绝对值大于所述预设覆盖率标准值,则依次提高所述业务逻辑的细化程度对分包处理后得到的各个分包进行再分包处理,并循环执行S2-S4直至所述差值绝对值小于或等于所述预设覆盖率标准值。