CN114817034A - 一种测试质量的分析方法、装置及电子设备 - Google Patents

一种测试质量的分析方法、装置及电子设备 Download PDF

Info

Publication number
CN114817034A
CN114817034A CN202210446206.1A CN202210446206A CN114817034A CN 114817034 A CN114817034 A CN 114817034A CN 202210446206 A CN202210446206 A CN 202210446206A CN 114817034 A CN114817034 A CN 114817034A
Authority
CN
China
Prior art keywords
index
alternative
quality analysis
test
test quality
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN202210446206.1A
Other languages
English (en)
Inventor
常萧颖
王欣
苏畅
李佩刚
高建瓴
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Agricultural Bank of China
Original Assignee
Agricultural Bank of China
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Agricultural Bank of China filed Critical Agricultural Bank of China
Priority to CN202210446206.1A priority Critical patent/CN114817034A/zh
Publication of CN114817034A publication Critical patent/CN114817034A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/36Prevention of errors by analysis, debugging or testing of software
    • G06F11/3668Testing of software
    • G06F11/3672Test management
    • G06F11/3692Test management for test results analysis
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/36Prevention of errors by analysis, debugging or testing of software
    • G06F11/3668Testing of software
    • G06F11/3672Test management
    • G06F11/3676Test management for coverage analysis
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/045Combinations of networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/047Probabilistic or stochastic networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/048Activation functions
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • G06N3/084Backpropagation, e.g. using gradient descent

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Health & Medical Sciences (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Computational Linguistics (AREA)
  • Data Mining & Analysis (AREA)
  • Evolutionary Computation (AREA)
  • Biomedical Technology (AREA)
  • Molecular Biology (AREA)
  • Computing Systems (AREA)
  • Artificial Intelligence (AREA)
  • Biophysics (AREA)
  • Mathematical Physics (AREA)
  • Software Systems (AREA)
  • Health & Medical Sciences (AREA)
  • Computer Hardware Design (AREA)
  • Quality & Reliability (AREA)
  • Probability & Statistics with Applications (AREA)
  • Tests Of Electronic Circuits (AREA)

Abstract

本发明提供了一种测试质量的分析方法、装置及电子设备,获取测试质量分析指标集合,所述测试质量分析指标集合包括多个测试质量分析指标,确定目标测试案例运行完成后,所述目标测试案例对应的所述测试质量分析指标的指标值,调用预设数据处理模型,以使所述预设数据处理模型对所述测试质量分析指标的指标值进行分析,得到所述目标测试案例的测试质量分析结果。由于所述预设数据处理模型基于训练数据训练得到,所述训练数据包括测试质量分析指标的指标样本值以及所述指标样本值对应的质量标识,则使得预设数据处理模型的数据处理准确度较高,进而使用该预设数据处理模型进行测试质量分析方式时,准确性也较高。

Description

一种测试质量的分析方法、装置及电子设备
技术领域
本发明涉及全流程功能测试领域,更具体的说,涉及一种测试质量的分析方法、装置及电子设备。
背景技术
测试案例:指对一项特定的软件产品进行测试任务的描述,包括测试目标、测试环境、输入数据、测试步骤、预期结果等。
目前,在测试案例执行完成后,技术人员需要分析此次测试过程的测试质量。目前,在测试质量分析时,主要是技术人员根据经验进行分析,此种分析方式准确性较低,无法满足测试质量分析需求。
发明内容
有鉴于此,本发明提供一种测试质量的分析方法、装置及电子设备,以解决测试质量分析方式准确性较低的问题。
为解决上述技术问题,本发明采用了如下技术方案:
一种测试质量的分析方法,包括:
获取测试质量分析指标集合;所述测试质量分析指标集合包括多个测试质量分析指标;
确定目标测试案例运行完成后,所述目标测试案例对应的所述测试质量分析指标的指标值;
调用预设数据处理模型,以使所述预设数据处理模型对所述测试质量分析指标的指标值进行分析,得到所述目标测试案例的测试质量分析结果;所述预设数据处理模型基于训练数据训练得到;所述训练数据包括测试质量分析指标的指标样本值以及所述指标样本值对应的质量标识。
可选地,所述预设数据处理模型的生成过程包括:
获取指标备选集合,所述指标备选集合包括多个备选指标;
对所述多个备选指标进行随机组合,得到备选指标组合;
获取所述备选指标组合中的备选指标的指标值和所述备选指标组合对应的质量标识;
使用所述备选指标组合中的备选指标的指标值和所述备选指标组合对应的质量标识,对神经网络模型进行训练,直至所述神经网络模型的损失函数小于预设阈值时停止;
筛选出损失函数值最小的神经网络模型,并作为预设数据处理模型。
可选地,获取测试质量分析指标集合,包括:
获取所述预设数据处理模型对应的神经网络模型;
将训练所述神经网络模型使用的备选指标组合作为测试质量分析指标集合,以及将所述备选指标组合中的备选指标作为测试质量分析指标。
可选地,还包括:
对修改前的代码信息和修改后的代码信息进行比对,得到增量代码;
在所述目标测试案例运行过程中,确定所述增量代码的被执行个数;
获取增加代码的总个数;
将所述增量代码的被执行个数与所述总个数的比值,作为代码覆盖率。
可选地,确定所述增量代码的被执行个数,包括:
在所述增量代码的前边预设位置插入开始执行标志位,和在后边预设位置插入结束执行标志位;
获取所述修改后的代码信息运行完成后的应用日志,并统计所述应用日志中,同时出现对应的开始执行标志位和所述结束执行标志位的增量代码的个数;
将所述个数作为被执行个数。
一种测试质量的分析装置,包括:
指标获取模块,用于获取测试质量分析指标集合;所述测试质量分析指标集合包括多个测试质量分析指标;
指标值确定模块,用于确定目标测试案例运行完成后,所述目标测试案例对应的所述测试质量分析指标的指标值;
质量分析模块,用于调用预设数据处理模型,以使所述预设数据处理模型对所述测试质量分析指标的指标值进行分析,得到所述目标测试案例的测试质量分析结果;所述预设数据处理模型基于训练数据训练得到;所述训练数据包括测试质量分析指标的指标样本值以及所述指标样本值对应的质量标识。
可选地,还包括模型生成模块,所述模型生成模块包括:
指标获取子模块,用于获取指标备选集合,所述指标备选集合包括多个备选指标;
组合子模块,用于对所述多个备选指标进行随机组合,得到备选指标组合;
标识获取子模块,用于获取所述备选指标组合中的备选指标的指标值和所述备选指标组合对应的质量标识;
训练子模块,用于使用所述备选指标组合中的备选指标的指标值和所述备选指标组合对应的质量标识,对神经网络模型进行训练,直至所述神经网络模型的损失函数小于预设阈值时停止;
筛选子模块,用于筛选出损失函数值最小的神经网络模型,并作为预设数据处理模型。
可选地,所述指标获取模块具体用于:
获取所述预设数据处理模型对应的神经网络模型,将训练所述神经网络模型使用的备选指标组合作为测试质量分析指标集合,以及将所述备选指标组合中的备选指标作为测试质量分析指标。
可选地,还包括:
代码比对模块,用于对修改前的代码信息和修改后的代码信息进行比对,得到增量代码;
个数确定模块,用于在所述目标测试案例运行过程中,确定所述增量代码的被执行个数;
个数获取模块,用于获取增加代码的总个数;
覆盖率计算模块,用于将所述增量代码的被执行个数与所述总个数的比值,作为代码覆盖率。
一种电子设备,包括:存储器和处理器;
其中,所述存储器用于存储程序;
处理器调用程序并用于执行如权利要求1-5任一项所述的测试质量的分析方法。
相较于现有技术,本发明具有以下有益效果:
本发明提供了一种测试质量的分析方法、装置及电子设备,获取测试质量分析指标集合,所述测试质量分析指标集合包括多个测试质量分析指标,确定目标测试案例运行完成后,所述目标测试案例对应的所述测试质量分析指标的指标值,调用预设数据处理模型,以使所述预设数据处理模型对所述测试质量分析指标的指标值进行分析,得到所述目标测试案例的测试质量分析结果。由于所述预设数据处理模型基于训练数据训练得到,所述训练数据包括测试质量分析指标的指标样本值以及所述指标样本值对应的质量标识,则使得预设数据处理模型的数据处理准确度较高,进而使用该预设数据处理模型进行测试质量分析方式时,准确性也较高。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据提供的附图获得其他的附图。
图1为本发明实施例提供的一种测试质量的分析方法的方法流程图;
图2为本发明实施例提供的另一种测试质量的分析方法的方法流程图;
图3为本发明实施例提供的一种预设数据处理模型的结构示意图;
图4为本发明实施例提供的又一种测试质量的分析方法的方法流程图;
图5为本发明实施例提供的一种测试质量的分析装置的结构示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
目前,在测试案例执行完成后,技术人员需要分析此次测试过程的测试质量。目前,在测试质量分析时,主要是技术人员根据经验进行分析,此种分析方式准确性较低,无法满足测试质量分析需求。
为了解决这一问题,发明人经过研究发现,可以将神经网络模型应用到测试质量分析领域,训练模型并使用,即可分析得到测试案例执行完成后,本次测试流程的测试质量。
具体的,本发明提供了一种测试质量的分析方法、装置及电子设备,获取测试质量分析指标集合,所述测试质量分析指标集合包括多个测试质量分析指标,确定目标测试案例运行完成后,所述目标测试案例对应的所述测试质量分析指标的指标值,调用预设数据处理模型,以使所述预设数据处理模型对所述测试质量分析指标的指标值进行分析,得到所述目标测试案例的测试质量分析结果。由于所述预设数据处理模型基于训练数据训练得到,所述训练数据包括测试质量分析指标的指标样本值以及所述指标样本值对应的质量标识,则使得预设数据处理模型的数据处理准确度较高,进而使用该预设数据处理模型进行测试质量分析方式时,准确性也较高。
在上述内容的基础上,本发明实施例提供了一种测试质量的分析方法,可以应用于控制器、处理器等具有计算能力的设备。参照图1,测试质量的分析方法可以包括:
S11、获取测试质量分析指标集合。
所述测试质量分析指标集合包括多个测试质量分析指标。
在实际应用中,测试质量分析指标集合中的测试质量分析指标是从多个备选指标中筛选出来的。在筛选过程中,基于这些备选指标在预设数据处理模型训练时,对模型的影响度,而筛选得到。
一般来说,备选指标可以是测试案例执行率、测试用例执行通过率、平均测试用例缺陷发现数、测试自动化率、业务可用性用例自动化执行成功率、自动化测试用例失效误报率、自动化测试投入分布、测试案例数、功能点、缺陷情况、工作量、缺陷修复率、反向案例率等。
而最终确定的多个测试质量分析指标可以是:
a.测试案例数(被执行的案例数目,由大于等于0的整数表示)
b.功能点(需要编码完成的功能点数目,由浮点数值表示)
c.缺陷情况(缺陷按4级分类,从第一级到第四级对应单位缺陷分值分别为2分、1.5分、1分、0.5分,将项目中各级别缺陷数量乘以对应缺陷分值并求和)
d.工作量(完成测试工组需要的人月数,由浮点数值表示)
e.缺陷修复率(已修复缺陷与总缺陷数的比,由数值型百分比表示)
f.测试案例执行率(已执行案例与总案例数的比,由数值型百分比表示)
g.反向案例率(反向案例与总案例数的比,由数值型百分比表示)
这些多个测试质量分析指标组成测试质量分析指标集合。测试案例数、功能点、缺陷情况、工作量是从测试效率方面进行测试质量分析的,缺陷修复率、测试案例执行率、反向案例率是从测试运行方面进行测试质量分析的。
S12、确定目标测试案例运行完成后,所述目标测试案例对应的所述测试质量分析指标的指标值。
具体的,在目标测试案例运行完成后,统计上述的测试质量分析指标a-g的指标值。
S13、调用预设数据处理模型,以使所述预设数据处理模型对所述测试质量分析指标的指标值进行分析,得到所述目标测试案例的测试质量分析结果;所述预设数据处理模型基于训练数据训练得到。
所述训练数据包括测试质量分析指标的指标样本值以及所述指标样本值对应的质量标识。
在实际应用中,首先基于测试质量分析指标的指标样本值以及所述指标样本值对应的质量标识,对模型进行训练,得到模型。此后,将测试质量分析指标的指标值输入到该模型中,即可得到目标测试案例的测试质量分析结果。该测试质量分析结果即为目标测试案例测试过程中的测试质量。
本实施例中,获取测试质量分析指标集合,所述测试质量分析指标集合包括多个测试质量分析指标,确定目标测试案例运行完成后,所述目标测试案例对应的所述测试质量分析指标的指标值,调用预设数据处理模型,以使所述预设数据处理模型对所述测试质量分析指标的指标值进行分析,得到所述目标测试案例的测试质量分析结果。由于所述预设数据处理模型基于训练数据训练得到,所述训练数据包括测试质量分析指标的指标样本值以及所述指标样本值对应的质量标识,则使得预设数据处理模型的数据处理准确度较高,进而使用该预设数据处理模型进行测试质量分析方式时,准确性也较高。
本发明的另一实现方式中,给出了上述预设数据处理模型的生成过程,参照图2,所述预设数据处理模型的生成过程可以包括:
S21、获取指标备选集合。
具体的,所述指标备选集合包括多个备选指标,备选指标参照上述相应描述,备选指标的数量为13个。
S22、对所述多个备选指标进行随机组合,得到备选指标组合。
具体的,对于多个备选指标,在进行随机组合时,得到的备选指标组合中的备选指标的数量可以是1-13个。但是在实际应用中,为了使得训练得到的模型较优,一般为5-13个。则将多个备选指标随机组合,得到包括有5-13个备选指标的多个备选指标组合。
S23、获取所述备选指标组合中的备选指标的指标值和所述备选指标组合对应的质量标识。
具体的,在确定出上述的多个备选指标组合之后,运行不同的测试案例样本,在测试案例样本运行完成后,采集备选指标组合中的备选指标的指标值。
另外,针对每一备选指标组合,人工根据经验标注测试案例样本的测试质量。一般选择优(y1)、良(y2)、中(y3)、差(y4)四大类别中的一类别。然后,将选择的类别作为备选指标组合对应的质量标识。
S24、使用所述备选指标组合中的备选指标的指标值和所述备选指标组合对应的质量标识,对神经网络模型进行训练,直至所述神经网络模型的损失函数小于预设阈值时停止。
S25、筛选出损失函数值最小的神经网络模型,并作为预设数据处理模型。
具体的,对于每一备选指标组合,均训练一个神经网络模型。则,有多少个备选指标组合,则训练得到多少个神经网络模型。
本实施例中,选择的神经网络模型可以是深层神经网络模型,具体结构可以参照图3。
以备选指标组合包括上述的a-g指标为例,上述指标a-g为深层神经网络模型的7个输入层神经元,并设定模型有四个输出值,分别为y1,y2,y3,y4,范围为[0,1],且y1+y2+y3+y4=1。y1、y2、y3、y4中,当y1最大时表示此项目测试工作评价为优,当y2最大时表示此项目测试工作评价为良,当y3最大时表示此项目测试工作评价为中,当y4最大时表示此项目测试工作评价为差。
如图3所示,最左边一列表示深度神经网络模型的输入神经元,称为输入层,对应指标a-g,中间两列表示隐藏层,m表示隐藏层数,n表示每一个隐藏层的节点数,Hmn表示第m个隐藏层的第n个节点,隐藏层之后为原始输出层,对应四个输出值x1、x2、x3、x4,隐藏层和原始输出层中神经元均需要使用激活函数实现去线性化,本发明采用的激活函数为sigmoid函数:
Figure BDA0003616973580000081
其中,x是神经元输入自变量,以原始输出层为例,即将x1、x2、x3、x4分别作为x代入公式
Figure BDA0003616973580000082
进行去线性化处理。
原始输出层之后为softmax层,softmax层是一层额外的处理层,将神经网络的输出变成一个概率分布,对于原始输出层的输出x1、x2、x3、x4,经过softmax回归处理之后的输出为
Figure BDA0003616973580000083
其中,(x)i为原始输出层的第i个节点的输出值,即x1、x2、x3、x4。也就是说,y1是通过x1代入softmax公式计算而得。n为输出节点的个数,即分类的类别个数,本发明模型中共有4个输出值x1、x2、x3、x4,所以n=4,因而:
Figure BDA0003616973580000084
最终输出层对应四个输出值y1、y2、y3、y4
采集模型对应系统的历史数据(即备选指标组合中的备选指标的指标值和所述备选指标组合对应的质量标识)作为训练集,确定隐藏层数量后,利用误差反向传播算法(BP算法)对深度神经网络模型进行迭代训练,训练收敛后可得到神经网络模型的权重,也就是节点与节点之间的连线对应的系数。模型训练完毕后,采集目标测试案例对应的所述测试质量分析指标的指标值作为输入,可得到输出,从而对项目的测试工作做出评价。
本发明引入了BP算法是为了提高训练神经网络模型的效率以及模型预测的准确性。BP算法的基本思想是,学习过程由信号的正向传播与误差的反向传播两个过程组成。正向传播时,输入样本从输入层传入,经各隐层逐层处理后,传向输出层。若输出层的实际输出与期望的输出(教师信号)不符,则转入误差的反向传播阶段。误差反传是将输出误差以某种形式通过隐层向输入层逐层反传,并将误差分摊给各层的所有单元,从而获得各层单元的误差信号,此误差信号即作为修正各单元权值的依据。这种信号正向传播与误差反向传播的各层权值调整过程,是周而复始地进行的。权值不断调整的过程,也就是网络的学习训练过程。BP算法可以根据预设的参数更新规则,不断地调整神经网络中的参数,以达到最符合期望的输出。这种特性非常适合用于训练测试工作评价模型,这是因为测试工作的历史数据丰富,评价指标明确翔实,即预设参数确定。BP算法拥有较强的非线性映射能力。测试工作评价模型解决的是基于多个输入项评价测试工作效果的非线性问题,使用BP算法后,模型输出与预期值更为接近。
本发明在神经网络模型中引入了softmax层的原因,是因为softmax函数常用于解决多分类问题,而本发明建立的测试工作评价模型本质上也是一个多分类问题,要得到的预测结果是优(y1)、良(y2)、中(y3)、差(y4)四大类中的一类。Softmax之所以在多分类问题上的良好表现,是因为Softmax中使用了指数,这样可以让输出层大的值更大,让输出层小的更小,增加了区分对比度,使模型的学习效率更高。第二个是因为softmax是连续可导的,消除了拐点,这个特性在机器学习的训练中非常必要,能够极大地提高训练效率。使用softmax层后,用相同历史数据训练模型,训练时间由原来的2小时左右,缩短至1小时30分钟左右。
本实施例中,最初在训练神经网络模型时,可以将备选指标组合中的备选指标的指标值和所述备选指标组合对应的质量标识,对神经网络模型进行训练,直至所述神经网络模型的损失函数小于预设阈值时停止。然后从中选择出较优的神经网络模型。
此外,还可以是将所有备选指标作为数据训练,经过几轮迭代,在迭代中不停的调整(增减)输入项,发现只有输入项为上述的a-g指标时,模型的输出值与预期值最为接近。其中,删减下去的指标是对模型训练的影响程度较小或者是产生负向影响度的指标。
本实施例中,在训练神经网络模型时,选择的是输出值与预期值接近的指标对模型进行训练,从而使得训练得到的模型较优,得到的输出结果与实际结果更相符。另外,本发明能够指导测试人员合理制定测试度量指标,客观评价测试执行过程,提升测试质效的同时,保证测试结果的真实性、客观性。
在上述模型训练的基础上,获取测试质量分析指标集合,包括:
获取所述预设数据处理模型对应的神经网络模型,将训练所述神经网络模型使用的备选指标组合作为测试质量分析指标集合,以及将所述备选指标组合中的备选指标作为测试质量分析指标。
也即是说,最优模型训练时使用的哪些指标即为本实施例中的测试质量分析指标,在后续测试案例运行完成后的测试质量分析时,采集测试质量分析指标的指标值,并输入至模型中,即可得到测试质量分析结果。
除了上述可以在测试完成后,对测试质量进行分析外,本发明中,还可以在测试过程中,对代码覆盖率进行分析。具体的,参照图4,分析方法还包括:
S31、对修改前的代码信息和修改后的代码信息进行比对,得到增量代码。
本实施例中,还可以配置代码配置库、测试覆盖率生成控制器。其中,代码配置库包含系统名称、全量代码、增量代码,并支持扩展。测试覆盖率生成控制器包含系统名称、读写模块、存储模块,并支持扩展。
代码配置库参照表1。
表1
Figure BDA0003616973580000111
测试覆盖率生成控制器参照表2。
表2
系统名称 读写模块 存储模块
系统中文描述 --- ----
在实际应用中,代码覆盖率统计的是增量代码的覆盖率。
从代码仓库svn中获取修改前的代码信息和修改后的代码信息,其中,修改前的代码信息可以是上一版本代码,修改后的代码信息可以是本次项目研发的代码。
然后,对二者进行比对,以提取增量代码。对增量代码进行编码,编码规则:代码所在程序文件名称+代码在文件中所在行数。产出增量代码编码表,表格样式参照表3。
表3
代码编码 代码 代码所在文件
S32、在所述目标测试案例运行过程中,确定所述增量代码的被执行个数。
本实施例中,增量代码的被执行个数是指,已经成功执行了的增量代码的个数。
在实际应用中,确定所述增量代码的被执行个数,可以包括:
1)在所述增量代码的前边预设位置插入开始执行标志位,和在后边预设位置插入结束执行标志位。
具体的,修改增量代码所在文件,在增量代码前(可以是紧邻,也可以是间隔一个空格)插入写应用日志COVER_LOG的语句,内容为:[代码编码]+[BEGIN TO EXEC],[代码编码]+[BEGIN TO EXEC]即为开始执行标志位。
步骤03、修改增量代码所在文件,在增量代码后(可以是紧邻,也可以是间隔一个空格)插入写应用日志COVER_LOG的语句,内容为:[代码编码]+[END],[代码编码]+[END]即为结束执行标志位。
2)获取所述修改后的代码信息运行完成后的应用日志,并统计所述应用日志中,同时出现对应的开始执行标志位和所述结束执行标志位的增量代码的个数。
3)将所述个数作为被执行个数。
具体的,修改后的代码信息运行于被测系统,以行为单位实时获取修改后的代码信息的应用日志COVER_LOG的最新内容回传至测试人员测试机上。客户端程序将应用日志信息存入本地文件LOCAL_COVER_LOG中。遍历LOCAL_COVER_LOG文件,将内容相同的行进行去重,将去重结果输入至DIS_LOCAL_COVER_LOG文件。遍历DIS_LOCAL_COVER_LOG文件,统计[BEGIN TO EXEC]和[END]配对出现的增量代码,将结果输出至文件COVER_CODE。
统计COVER_CODE中的个数N,该个数N即为被执行个数。
S33、获取增加代码的总个数。
具体的,统计增量代码编码表中增量代码个数M。
S34、将所述增量代码的被执行个数与所述总个数的比值,作为代码覆盖率。
具体的,代码覆盖率=N/M。此外,还可以遍历增量代码编码表和COVER_CODE,产出未覆盖代码文件DISCOVER_CODE。
本实施例中,可以统计代码覆盖率,测试人员无需了解代码实际情况,可以在执行功能黑盒测试的时候,实时了解待测代码的覆盖率。此外,本发明还可以统计未覆盖代码文件,供测试人员参考,进而可以根据未覆盖代码情况增补功能测试用例集合,提高测试质量。
可选地,在上述测试质量的分析方法的实施例的基础上,本发明的另一实施例提供了一种测试质量的分析装置,参照图5,可以包括:
指标获取模块11,用于获取测试质量分析指标集合;所述测试质量分析指标集合包括多个测试质量分析指标;
指标值确定模块12,用于确定目标测试案例运行完成后,所述目标测试案例对应的所述测试质量分析指标的指标值;
质量分析模块13,用于调用预设数据处理模型,以使所述预设数据处理模型对所述测试质量分析指标的指标值进行分析,得到所述目标测试案例的测试质量分析结果;所述预设数据处理模型基于训练数据训练得到;所述训练数据包括测试质量分析指标的指标样本值以及所述指标样本值对应的质量标识。
进一步,还包括模型生成模块,所述模型生成模块包括:
指标获取子模块,用于获取指标备选集合,所述指标备选集合包括多个备选指标;
组合子模块,用于对所述多个备选指标进行随机组合,得到备选指标组合;
标识获取子模块,用于获取所述备选指标组合中的备选指标的指标值和所述备选指标组合对应的质量标识;
训练子模块,用于使用所述备选指标组合中的备选指标的指标值和所述备选指标组合对应的质量标识,对神经网络模型进行训练,直至所述神经网络模型的损失函数小于预设阈值时停止;
筛选子模块,用于筛选出损失函数值最小的神经网络模型,并作为预设数据处理模型。
进一步,所述指标获取模块具体用于:
获取所述预设数据处理模型对应的神经网络模型,将训练所述神经网络模型使用的备选指标组合作为测试质量分析指标集合,以及将所述备选指标组合中的备选指标作为测试质量分析指标。
进一步,还包括:
代码比对模块,用于对修改前的代码信息和修改后的代码信息进行比对,得到增量代码;
个数确定模块,用于在所述目标测试案例运行过程中,确定所述增量代码的被执行个数;
个数获取模块,用于获取增加代码的总个数;
覆盖率计算模块,用于将所述增量代码的被执行个数与所述总个数的比值,作为代码覆盖率。
进一步,个数确定模块包括:
标志位插入单元,用于在所述增量代码的前边预设位置插入开始执行标志位,和在后边预设位置插入结束执行标志位;
个数统计单元,用于获取所述修改后的代码信息运行完成后的应用日志,并统计所述应用日志中,同时出现对应的开始执行标志位和所述结束执行标志位的增量代码的个数;
个数确定单元,用于将所述个数作为被执行个数。
本实施例中,获取测试质量分析指标集合,所述测试质量分析指标集合包括多个测试质量分析指标,确定目标测试案例运行完成后,所述目标测试案例对应的所述测试质量分析指标的指标值,调用预设数据处理模型,以使所述预设数据处理模型对所述测试质量分析指标的指标值进行分析,得到所述目标测试案例的测试质量分析结果。由于所述预设数据处理模型基于训练数据训练得到,所述训练数据包括测试质量分析指标的指标样本值以及所述指标样本值对应的质量标识,则使得预设数据处理模型的数据处理准确度较高,进而使用该预设数据处理模型进行测试质量分析方式时,准确性也较高。
需要说明的是,本实施例中的各个模块、子模块和单元的工作过程,请参照上述实施例中的相应说明,在此不再赘述。
可选地,在上述测试质量的分析方法及装置的实施例的基础上,本发明的另一实施例提供了一种电子设备,包括:存储器和处理器;
其中,所述存储器用于存储程序;
处理器调用程序并用于执行上述的测试质量的分析方法。
本实施例中,获取测试质量分析指标集合,所述测试质量分析指标集合包括多个测试质量分析指标,确定目标测试案例运行完成后,所述目标测试案例对应的所述测试质量分析指标的指标值,调用预设数据处理模型,以使所述预设数据处理模型对所述测试质量分析指标的指标值进行分析,得到所述目标测试案例的测试质量分析结果。由于所述预设数据处理模型基于训练数据训练得到,所述训练数据包括测试质量分析指标的指标样本值以及所述指标样本值对应的质量标识,则使得预设数据处理模型的数据处理准确度较高,进而使用该预设数据处理模型进行测试质量分析方式时,准确性也较高。
对所公开的实施例的上述说明,使本领域专业技术人员能够实现或使用本发明。对这些实施例的多种修改对本领域的专业技术人员来说将是显而易见的,本文中所定义的一般原理可以在不脱离本发明的精神或范围的情况下,在其它实施例中实现。因此,本发明将不会被限制于本文所示的这些实施例,而是要符合与本文所公开的原理和新颖特点相一致的最宽的范围。

Claims (10)

1.一种测试质量的分析方法,其特征在于,包括:
获取测试质量分析指标集合;所述测试质量分析指标集合包括多个测试质量分析指标;
确定目标测试案例运行完成后,所述目标测试案例对应的所述测试质量分析指标的指标值;
调用预设数据处理模型,以使所述预设数据处理模型对所述测试质量分析指标的指标值进行分析,得到所述目标测试案例的测试质量分析结果;所述预设数据处理模型基于训练数据训练得到;所述训练数据包括测试质量分析指标的指标样本值以及所述指标样本值对应的质量标识。
2.根据权利要求1所述的分析方法,其特征在于,所述预设数据处理模型的生成过程包括:
获取指标备选集合,所述指标备选集合包括多个备选指标;
对所述多个备选指标进行随机组合,得到备选指标组合;
获取所述备选指标组合中的备选指标的指标值和所述备选指标组合对应的质量标识;
使用所述备选指标组合中的备选指标的指标值和所述备选指标组合对应的质量标识,对神经网络模型进行训练,直至所述神经网络模型的损失函数小于预设阈值时停止;
筛选出损失函数值最小的神经网络模型,并作为预设数据处理模型。
3.根据权利要求2所述的分析方法,其特征在于,获取测试质量分析指标集合,包括:
获取所述预设数据处理模型对应的神经网络模型;
将训练所述神经网络模型使用的备选指标组合作为测试质量分析指标集合,以及将所述备选指标组合中的备选指标作为测试质量分析指标。
4.根据权利要求1所述的分析方法,其特征在于,还包括:
对修改前的代码信息和修改后的代码信息进行比对,得到增量代码;
在所述目标测试案例运行过程中,确定所述增量代码的被执行个数;
获取增加代码的总个数;
将所述增量代码的被执行个数与所述总个数的比值,作为代码覆盖率。
5.根据权利要求4所述的分析方法,其特征在于,确定所述增量代码的被执行个数,包括:
在所述增量代码的前边预设位置插入开始执行标志位,和在后边预设位置插入结束执行标志位;
获取所述修改后的代码信息运行完成后的应用日志,并统计所述应用日志中,同时出现对应的开始执行标志位和所述结束执行标志位的增量代码的个数;
将所述个数作为被执行个数。
6.一种测试质量的分析装置,其特征在于,包括:
指标获取模块,用于获取测试质量分析指标集合;所述测试质量分析指标集合包括多个测试质量分析指标;
指标值确定模块,用于确定目标测试案例运行完成后,所述目标测试案例对应的所述测试质量分析指标的指标值;
质量分析模块,用于调用预设数据处理模型,以使所述预设数据处理模型对所述测试质量分析指标的指标值进行分析,得到所述目标测试案例的测试质量分析结果;所述预设数据处理模型基于训练数据训练得到;所述训练数据包括测试质量分析指标的指标样本值以及所述指标样本值对应的质量标识。
7.根据权利要求6所述的分析装置,其特征在于,还包括模型生成模块,所述模型生成模块包括:
指标获取子模块,用于获取指标备选集合,所述指标备选集合包括多个备选指标;
组合子模块,用于对所述多个备选指标进行随机组合,得到备选指标组合;
标识获取子模块,用于获取所述备选指标组合中的备选指标的指标值和所述备选指标组合对应的质量标识;
训练子模块,用于使用所述备选指标组合中的备选指标的指标值和所述备选指标组合对应的质量标识,对神经网络模型进行训练,直至所述神经网络模型的损失函数小于预设阈值时停止;
筛选子模块,用于筛选出损失函数值最小的神经网络模型,并作为预设数据处理模型。
8.根据权利要求7所述的分析装置,其特征在于,所述指标获取模块具体用于:
获取所述预设数据处理模型对应的神经网络模型,将训练所述神经网络模型使用的备选指标组合作为测试质量分析指标集合,以及将所述备选指标组合中的备选指标作为测试质量分析指标。
9.根据权利要求6所述的分析装置,其特征在于,还包括:
代码比对模块,用于对修改前的代码信息和修改后的代码信息进行比对,得到增量代码;
个数确定模块,用于在所述目标测试案例运行过程中,确定所述增量代码的被执行个数;
个数获取模块,用于获取增加代码的总个数;
覆盖率计算模块,用于将所述增量代码的被执行个数与所述总个数的比值,作为代码覆盖率。
10.一种电子设备,其特征在于,包括:存储器和处理器;
其中,所述存储器用于存储程序;
处理器调用程序并用于执行如权利要求1-5任一项所述的测试质量的分析方法。
CN202210446206.1A 2022-04-26 2022-04-26 一种测试质量的分析方法、装置及电子设备 Pending CN114817034A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202210446206.1A CN114817034A (zh) 2022-04-26 2022-04-26 一种测试质量的分析方法、装置及电子设备

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202210446206.1A CN114817034A (zh) 2022-04-26 2022-04-26 一种测试质量的分析方法、装置及电子设备

Publications (1)

Publication Number Publication Date
CN114817034A true CN114817034A (zh) 2022-07-29

Family

ID=82508307

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202210446206.1A Pending CN114817034A (zh) 2022-04-26 2022-04-26 一种测试质量的分析方法、装置及电子设备

Country Status (1)

Country Link
CN (1) CN114817034A (zh)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN115543774A (zh) * 2022-08-17 2022-12-30 睿智合创(北京)科技有限公司 一种案例自动化测算方法
CN115543773A (zh) * 2022-08-17 2022-12-30 睿智合创(北京)科技有限公司 一种测试结果自动比对方法

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106886487A (zh) * 2015-12-15 2017-06-23 北京京航计算通讯研究所 用于评价fpga软件可靠性的方法
CN108470000A (zh) * 2018-03-06 2018-08-31 睿云联(厦门)网络通讯技术有限公司 通讯终端软件自动测试方法、系统及介质
CN109543939A (zh) * 2018-10-11 2019-03-29 北京信息科技大学 一种绿色建材产品认证风险评价模型构建的方法
CN113568839A (zh) * 2021-08-03 2021-10-29 京东科技控股股份有限公司 软件测试和统计测试覆盖率的方法、装置、设备及介质
CN113609008A (zh) * 2021-07-27 2021-11-05 北京淇瑀信息科技有限公司 测试结果分析方法、装置和电子设备
WO2022048168A1 (zh) * 2020-09-03 2022-03-10 上海上讯信息技术股份有限公司 一种用于故障预测神经网络模型的训练方法与设备

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106886487A (zh) * 2015-12-15 2017-06-23 北京京航计算通讯研究所 用于评价fpga软件可靠性的方法
CN108470000A (zh) * 2018-03-06 2018-08-31 睿云联(厦门)网络通讯技术有限公司 通讯终端软件自动测试方法、系统及介质
CN109543939A (zh) * 2018-10-11 2019-03-29 北京信息科技大学 一种绿色建材产品认证风险评价模型构建的方法
WO2022048168A1 (zh) * 2020-09-03 2022-03-10 上海上讯信息技术股份有限公司 一种用于故障预测神经网络模型的训练方法与设备
CN113609008A (zh) * 2021-07-27 2021-11-05 北京淇瑀信息科技有限公司 测试结果分析方法、装置和电子设备
CN113568839A (zh) * 2021-08-03 2021-10-29 京东科技控股股份有限公司 软件测试和统计测试覆盖率的方法、装置、设备及介质

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN115543774A (zh) * 2022-08-17 2022-12-30 睿智合创(北京)科技有限公司 一种案例自动化测算方法
CN115543773A (zh) * 2022-08-17 2022-12-30 睿智合创(北京)科技有限公司 一种测试结果自动比对方法

Similar Documents

Publication Publication Date Title
CN114817034A (zh) 一种测试质量的分析方法、装置及电子设备
US20220300820A1 (en) Ann-based program testing method, testing system and application
CN108491931B (zh) 一种基于机器学习提高无损检测精度的方法
CN115587543A (zh) 基于联邦学习和lstm的刀具剩余寿命预测方法及系统
Tortum et al. The investigation of model selection criteria in artificial neural networks by the Taguchi method
CN114136619B (zh) 一种基于卷积自编码的变工况下滚动轴承故障诊断方法
CN112634268B (zh) 一种视频质量评价方法、装置及电子设备
CN114860617B (zh) 一种智能压力测试方法及系统
CN112712181A (zh) 模型构建优化方法、装置、设备和可读存储介质
CN113656279B (zh) 基于残差网络和度量注意机制的代码气味检测方法
CN116662186A (zh) 基于逻辑回归的日志回放断言方法及其装置、电子设备
CN113239730B (zh) 一种基于计算机视觉的结构虚假模态参数自动剔除方法
CN115659223A (zh) 基于多算法的滚动轴承故障诊断方法、装置、设备及介质
CN108053093A (zh) 一种基于平均影响值数据变换的k-近邻故障诊断方法
Pitts Random Mutant Selection and Equivalent Mutants Revisited
CN116505972B (zh) 一种线缆信号传输的智能检测方法及系统
CN111507639B (zh) 理财风险分析方法及装置
CN113434408B (zh) 一种基于测试预言的单元测试用例排序方法
CN110852418A (zh) 神经网络模型的数据处理方法及装置、存储介质、终端
CN112434839B (zh) 一种配电变压器重过载风险的预测方法及电子设备
CN117130942B (zh) 一种模拟国产化生产环境的仿真测试方法
CN117150441A (zh) 降低数据噪声和不平衡性影响的装备性能评估方法和系统
Hall et al. The use of simulation techniques for expert system test and evaluation
CN116245355A (zh) 生产线故障定位方法、设备及可读存储介质
CN117370742A (zh) 一种数据缺失下的轴承剩余寿命预测方法

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination