CN113515625A - 测试结果分类模型训练方法、分类方法及装置 - Google Patents
测试结果分类模型训练方法、分类方法及装置 Download PDFInfo
- Publication number
- CN113515625A CN113515625A CN202110542887.7A CN202110542887A CN113515625A CN 113515625 A CN113515625 A CN 113515625A CN 202110542887 A CN202110542887 A CN 202110542887A CN 113515625 A CN113515625 A CN 113515625A
- Authority
- CN
- China
- Prior art keywords
- test result
- classification model
- training
- log text
- result classification
- 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
Links
- 238000012360 testing method Methods 0.000 title claims abstract description 256
- 238000013145 classification model Methods 0.000 title claims abstract description 182
- 238000012549 training Methods 0.000 title claims abstract description 151
- 238000000034 method Methods 0.000 title claims abstract description 96
- 239000011159 matrix material Substances 0.000 claims abstract description 93
- 238000004590 computer program Methods 0.000 claims abstract description 26
- 238000012795 verification Methods 0.000 claims description 54
- 238000005457 optimization Methods 0.000 claims description 18
- 238000011176 pooling Methods 0.000 claims description 18
- 230000015654 memory Effects 0.000 claims description 11
- 238000013527 convolutional neural network Methods 0.000 claims description 9
- 238000007781 pre-processing Methods 0.000 claims description 6
- 238000013473 artificial intelligence Methods 0.000 abstract description 3
- 238000010586 diagram Methods 0.000 description 19
- 230000006870 function Effects 0.000 description 11
- 210000004205 output neuron Anatomy 0.000 description 11
- 238000004364 calculation method Methods 0.000 description 10
- 230000008569 process Effects 0.000 description 10
- 238000004891 communication Methods 0.000 description 8
- 238000005516 engineering process Methods 0.000 description 6
- 238000012545 processing Methods 0.000 description 6
- 238000004458 analytical method Methods 0.000 description 5
- 238000012217 deletion Methods 0.000 description 5
- 230000037430 deletion Effects 0.000 description 5
- 230000000694 effects Effects 0.000 description 5
- 230000004913 activation Effects 0.000 description 3
- 230000002452 interceptive effect Effects 0.000 description 3
- 230000003287 optical effect Effects 0.000 description 3
- 230000011218 segmentation Effects 0.000 description 3
- 108010001267 Protein Subunits Proteins 0.000 description 2
- 238000010276 construction Methods 0.000 description 2
- 238000012423 maintenance Methods 0.000 description 2
- 238000004806 packaging method and process Methods 0.000 description 2
- 239000000758 substrate Substances 0.000 description 2
- 238000010200 validation analysis Methods 0.000 description 2
- 230000002159 abnormal effect Effects 0.000 description 1
- 238000013528 artificial neural network Methods 0.000 description 1
- 238000004422 calculation algorithm Methods 0.000 description 1
- 210000002364 input neuron Anatomy 0.000 description 1
- 239000004973 liquid crystal related substance Substances 0.000 description 1
- 238000003062 neural network model Methods 0.000 description 1
- 210000002569 neuron Anatomy 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 238000000638 solvent extraction Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/30—Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
- G06F16/35—Clustering; Classification
- G06F16/353—Clustering; Classification into predefined classes
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/36—Preventing errors by testing or debugging software
- G06F11/3668—Software testing
- G06F11/3672—Test management
- G06F11/3692—Test management for test results analysis
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/30—Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
- G06F16/35—Clustering; Classification
- G06F16/355—Class or cluster creation or modification
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
- G06N3/045—Combinations of networks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
- G06N3/048—Activation functions
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/08—Learning methods
- G06N3/084—Backpropagation, 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)
- Data Mining & Analysis (AREA)
- General Health & Medical Sciences (AREA)
- Artificial Intelligence (AREA)
- Biophysics (AREA)
- Evolutionary Computation (AREA)
- Biomedical Technology (AREA)
- Molecular Biology (AREA)
- Computing Systems (AREA)
- Computational Linguistics (AREA)
- Life Sciences & Earth Sciences (AREA)
- Mathematical Physics (AREA)
- Software Systems (AREA)
- Health & Medical Sciences (AREA)
- Databases & Information Systems (AREA)
- Computer Hardware Design (AREA)
- Quality & Reliability (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本公开提供了一种测试结果分类模型训练方法,应用于金融领域、人工智能领域或其它领域。测试结果分类模型训练方法包括:获取多个日志文本,其中,每个日志文本包括自动化测试执行失败的案例;根据多个日志文本生成训练样本数据集,其中,训练样本数据集中包括词向量矩阵以及词向量矩阵的标签信息;以及利用训练样本数据集训练待训练测试结果分类模型,得到用于对自动化测试结果进行分类的测试结果分类模型。本公开还提供了一种测试结果分类方法、测试结果分类模型训练装置、测试结果分类装置、电子设备、计算机可读存储介质及计算机程序产品。
Description
技术领域
本公开涉及金融领域和人工智能技术领域,更具体地,涉及一种测试结果分类模型训练方法、分类方法、装置、电子设备、计算机可读存储介质和计算机程序产品。
背景技术
随着自动化测试的重要性越来越高,相应的执行频率也越来越快,每次执行都会产生大量的结果,其中失败的执行结果需要测试人员人工分类,相关技术中一般是预置一些关键字和所属分类的对照规则,将失败的执行结果关键报错日志和预置的关键字规则做字符串匹配,根据匹配结果进行分类,以达成分析的目的。
在实现本公开构思的过程中,发明人发现相关技术中至少存在分类有局限性、分类效果不佳以及人工分类成本较高的技术问题。
发明内容
有鉴于此,本公开提供了一种测试结果分类模型训练方法、分类方法、装置、电子设备、计算机可读存储介质和计算机程序产品。
本公开的一个方面提供了一种测试结果分类模型训练方法,包括:
获取多个日志文本,其中,每个上述日志文本包括自动化测试执行失败的案例;
根据多个上述日志文本生成训练样本数据集,其中,上述训练样本数据集中包括词向量矩阵以及上述词向量矩阵的标签信息;以及
利用上述训练样本数据集训练待训练测试结果分类模型,得到用于对自动化测试结果进行分类的测试结果分类模型。
根据本公开的实施例,上述根据上述日志文本生成训练样本数据集包括:
对上述日志文本进行预处理,以删除上述日志文本中的干扰字符,得到删减日志文本;
根据上述删减日志文本中的词数,将上述删减日志文本分割为至少一个分割日志文本;
生成与上述分割日志文本对应的至少一个词向量矩阵,其中,上述词向量矩阵的数量与上述分割日志文本的数量相同,上述词向量矩阵的一行表征上述分割日志文本中的一个词,上述训练样本数据集由至少一个上述词向量矩阵构成。
根据本公开的实施例,上述根据上述删减日志文本中的词数,将上述删减日志文本分割为至少一个分割日志文本包括:
确定上述删减日志文本中的词数;
在上述删减日志文本中的词数小于等于预设阈值的情况下,将上述删减日志文本确定为上述分割日志文本;
在上述删减日志文本中的词数大于上述预设阈值的情况下,利用预设滑动步长以及预设窗口长度的词窗口,将上述删减日志文本分割为多个上述分割日志文本。
根据本公开的实施例,上述利用预设滑动步长以及预设窗口长度的词窗口,将上述删减日志文本分割为多个上述分割日志文本包括:
将上述词窗口以上述预设滑动步长,沿着构成上述删减日志文本的词的排列路径每滑动一次,确定一个上述分割日志文本。
根据本公开的实施例,上述待训练测试结果分类模型包括卷积神经网络模型;
上述卷积神经网络模型包括依次级联的输入层、第一卷积层、第一池化层、第二卷积层、第二池化层、全连接层以及输出层。
根据本公开的实施例,上述利用上述训练样本数据集训练待训练测试结果分类模型,得到测试结果分类模型包括:
将上述训练样本数据集划分为训练集和验证集;
利用上述训练集训练上述待训练测试结果分类模型,得到待验证测试结果分类模型;
利用上述验证集对上述待验证测试结果分类模型进行验证,得到用于表征分类准确率的验证结果,若上述验证结果不符合迭代停止条件,则继续对上述待验证测试结果分类模型进行训练,直至上述验证结果符合迭代停止条件,输出上述测试结果分类模型。
根据本公开的实施例,上述标签信息包括:程序问题、被测环境异常、测试脚本问题、测试框架问题。
根据本公开的实施例,上述干扰字符包括以下至少之一:标点符号、数字、预设目标字符。
本公开的另一个方面提供了一种自动化测试结果分类方法,包括:
获取待分类日志文本,上述待分类日志文本与执行失败的自动化测试项目对应;
根据上述待分类日志文本生成与上述待分类日志文本对应的目标词向量矩阵;以及
将上述目标词向量矩阵输入测试结果分类模型,输出分类结果,其中,上述测试结果分类模型由上述的测试结果分类模型训练方法训练得到。
根据本公开的实施例,在根据一个上述待分类日志文本生成多个与上述待分类日志文本对应的目标词向量矩阵的情况下,上述将上述目标词向量矩阵输入测试结果分类模型,输出分类结果包括:
将上述多个词向量矩阵依次输入上述测试结果分类模型,直至上述测试结果分类模型输出分类结果。
根据本公开的实施例,上述分类结果中包括错误的分类结果,上述方法还包括:
根据与上述错误的分类结果对应的上述目标词向量矩阵生成错误样本数据集,其中,上述错误样本数据集包括与上述错误的分类结果对应的上述目标词向量矩阵,以及上述目标词向量矩阵的标签信息;
利用上述错误样本数据集优化上述测试结果分类模型,得到优化测试结果分类模型。
根据本公开的实施例,上述利用上述错误样本数据集优化上述测试结果分类模型,得到优化测试结果分类模型包括:
将上述错误样本数据集集划分为优化训练集和优化验证集;
利用上述优化训练集训练上述测试结果分类模型,得到待优化验证测试结果分类模型;
利用上述优化验证集对上述待优化验证测试结果分类模型进行验证,得到用于表征分类准确率的验证结果,若上述验证结果不符合迭代停止条件,则继续对上述待优化验证测试结果分类模型进行训练,直至上述验证结果符合迭代停止条件,输出上述优化测试结果分类模型。
本公开的另一个方面提供了一种测试结果分类模型训练装置,包括:
第一获取模块,用于获取多个日志文本,其中,每个上述日志文本包括自动化测试执行失败的案例;
第二获取模块,用于根据多个上述日志文本生成训练样本数据集,其中,上述训练样本数据集中包括词向量矩阵以及上述词向量矩阵的标签信息;
训练模块,用于利用上述训练样本数据集训练待训练测试结果分类模型,得到用于对自动化测试结果进行分类的测试结果分类模型。
本公开的另一个方面提供了一种测试结果分类装置,包括:
第三获取模块,用于获取待分类日志文本,上述待分类日志文本与执行失败的自动化测试项目对应;
第四获取模块,用于根据上述待分类日志文本生成与上述待分类日志文本对应的目标词向量矩阵;
分类模块,用于将上述目标词向量矩阵输入测试结果分类模型,输出分类结果,其中,上述测试结果分类模型由上述的测试结果分类模型训练方法训练得到。
本公开的另一方面提供了电子设备,包括:一个或多个处理器;存储器,用于存储一个或多个指令,其中,当所述一个或多个指令被所述一个或多个处理器执行时,使得所述一个或多个处理器实现如上所述的方法。
本公开的另一方面提供了一种计算机可读存储介质,存储有计算机可执行指令,所述指令在被执行时用于实现如上所述的方法。
本公开的另一方面提供了一种计算机程序产品,所述计算机程序产品包括计算机可执行指令,所述指令在被执行时用于实现如上所述的方法。
本公开实施例提供的测试结果分类模型训练方法,根据日志文本生成词向量矩阵,通过词向量矩阵对待训练测试结果分类模型进行训练,训练得到的测试结果分类模型对自动化测试结果具有分类准确度高的特点,所以至少部分地克服了相关技术中存在的分类效果不佳的技术问题。
附图说明
通过以下参照附图对本公开实施例的描述,本公开的上述以及其他目的、特征和优点将更为清楚,在附图中:
图1示意性示出了根据本公开实施例的可以应用测试结果分类模型训练方法、测试结果分类方法、测试结果分类模型训练装置以及测试结果分类装置的示例性系统架构;
图2示意性示出了根据本公开实施例的测试结果分类模型训练方法的流程图;
图3示意性示出了根据本公开实施例的根据日志文本生成训练样本数据集的流程图;
图4示意性示出了根据本公开实施例的根据删减日志文本中的词数,将删减日志文本分割为至少一个分割日志文本的流程图;
图5示意性示出了根据本公开实施例的根据日志文本生成训练样本数据集的示意图;
图6示意性示出了根据本公开实施例的待训练测试结果分类模型的示意图;
图7示意性示出了根据本公开实施例的利用训练样本数据集训练待训练测试结果分类模型,得到测试结果分类模型的流程图;
图8示意性示出了根据本公开实施例的自动化测试结果分类方法的流程图;
图9示意性示出了根据本公开实施例的优化测试结果分类模型的流程图;
图10示意性示出了根据本公开实施例的利用错误样本数据集优化测试结果分类模型,得到优化测试结果分类模型的流程图;
图11示意性示出了根据本公开实施例的测试结果分类模型训练装置框图;
图12示意性示出了根据本公开实施例的测试结果分类装置框图;以及
图13示意性示出了根据本公开实施例的适于实现上文描述的方法的电子设备的框图。
具体实施方式
以下,将参照附图来描述本公开的实施例。但是应该理解,这些描述只是示例性的,而并非要限制本公开的范围。在下面的详细描述中,为便于解释,阐述了许多具体的细节以提供对本公开实施例的全面理解。然而,明显地,一个或多个实施例在没有这些具体细节的情况下也可以被实施。此外,在以下说明中,省略了对公知结构和技术的描述,以避免不必要地混淆本公开的概念。
在此使用的术语仅仅是为了描述具体实施例,而并非意在限制本公开。在此使用的术语“包括”、“包含”等表明了所述特征、步骤、操作和/或部件的存在,但是并不排除存在或添加一个或多个其他特征、步骤、操作或部件。
在此使用的所有术语(包括技术和科学术语)具有本领域技术人员通常所理解的含义,除非另外定义。应注意,这里使用的术语应解释为具有与本说明书的上下文相一致的含义,而不应以理想化或过于刻板的方式来解释。
在使用类似于“A、B和C等中至少一个”这样的表述的情况下,一般来说应该按照本领域技术人员通常理解该表述的含义来予以解释(例如,“具有A、B和C中至少一个的系统”应包括但不限于单独具有A、单独具有B、单独具有C、具有A和B、具有A和C、具有B和C、和/或具有A、B、C的系统等)。在使用类似于“A、B或C等中至少一个”这样的表述的情况下,一般来说应该按照本领域技术人员通常理解该表述的含义来予以解释(例如,“具有A、B或C中至少一个的系统”应包括但不限于单独具有A、单独具有B、单独具有C、具有A和B、具有A和C、具有B和C、和/或具有A、B、C的系统等)。
本公开提供了一种测试结果分类模型训练方法,应用于金融领域、人工智能领域或其它领域。测试结果分类模型训练方法包括:获取多个日志文本,其中,每个日志文本包括自动化测试执行失败的案例;根据多个日志文本生成训练样本数据集,其中,训练样本数据集中包括词向量矩阵以及词向量矩阵的标签信息;以及利用训练样本数据集训练待训练测试结果分类模型,得到用于对自动化测试结果进行分类的测试结果分类模型。本公开还提供了一种测试结果分类方法、测试结果分类模型训练装置、测试结果分类装置、电子设备、计算机可读存储介质及计算机程序产品。
图1示意性示出了根据本公开实施例的可以应用测试结果分类模型训练方法、测试结果分类方法、测试结果分类模型训练装置以及测试结果分类装置的示例性系统架构100。需要注意的是,图1所示仅为可以应用本公开实施例的系统架构的示例,以帮助本领域技术人员理解本公开的技术内容,但并不意味着本公开实施例不可以用于其他设备、系统、环境或场景。
如图1所示,根据该实施例的系统架构100可以包括终端设备101、102、103,网络104和服务器105。网络104用以在终端设备101、102、103和服务器105之间提供通信链路的介质。网络104可以包括各种连接类型,例如有线和/或无线通信链路等等。
用户可以使用终端设备101、102、103通过网络104与服务器105交互,以接收或发送消息等。终端设备101、102、103上可以安装有各种通讯客户端应用,例如购物类应用、网页浏览器应用、搜索类应用、即时通信工具、邮箱客户端和/或社交平台软件等(仅为示例)。
终端设备101、102、103可以是具有显示屏并且支持网页浏览的各种电子设备,包括但不限于智能手机、平板电脑、膝上型便携计算机和台式计算机等等。
服务器105可以是提供各种服务的服务器,例如对用户利用终端设备101、102、103所浏览的网站提供支持的后台管理服务器(仅为示例)。后台管理服务器可以对接收到的用户请求等数据进行分析等处理,并将处理结果(例如根据用户请求获取或生成的网页、信息、或数据等)反馈给终端设备。
需要说明的是,本公开实施例所测试结果分类模型训练方法、测试结果分类方法一般可以由服务器105执行。相应地,本公开实施例所提供的测试结果分类模型训练装置、测试结果分类装置一般可以设置于服务器105中。本公开实施例所提供的测试结果分类模型训练方法、测试结果分类方法也可以由不同于服务器105且能够与终端设备101、102、103和/或服务器105通信的服务器或服务器集群执行。相应地,本公开实施例所提供的测试结果分类模型训练装置、测试结果分类装置也可以设置于不同于服务器105且能够与终端设备101、102、103和/或服务器105通信的服务器或服务器集群中。或者,本公开实施例所提供的测试结果分类模型训练方法、测试结果分类方法方法也可以由终端设备101、102、或103执行,或者也可以由不同于终端设备101、102、或103的其他终端设备执行。相应地,本公开实施例所提供的测试结果分类模型训练装置、测试结果分类装置也可以设置于终端设备101、102、或103中,或设置于不同于终端设备101、102、或103的其他终端设备中。
例如,词向量矩阵、词向量矩阵的标签信息以及目标词向量矩阵可以原本存储在终端设备101、102、或103中的任意一个(例如,终端设备101,但不限于此)之中,或者存储在外部存储设备上并可以导入到终端设备101中。然后,终端设备101可以在本地执行本公开实施例所提供的测试结果分类模型训练方法和测试结果分类方法,或者将词向量矩阵、词向量矩阵的标签信息以及目标词向量矩阵发送到其他终端设备、服务器、或服务器集群,并由接收该词向量矩阵、词向量矩阵的标签信息以及目标词向量矩阵的其他终端设备、服务器、或服务器集群来执行本公开实施例所提供的测试结果分类模型训练方法和测试结果分类方法。
应该理解,图1中的终端设备、网络和服务器的数目仅仅是示意性的。根据实现需要,可以具有任意数目的终端设备、网络和服务器。
在实现本公开构思的过程中,发明人发现相关技术中对于自动化测试的执行结果分析主要是预置一些关键字和自动化测试的执行结果所属分类的对照规则,将失败的执行结果关键报错日志和预置的关键字规则做字符串匹配,根据匹配结果进行分类,以达成分析的目的。
相关技术中的这种自动化测试执行结果分析方法主要依赖于报错日志的信息,而由于报错日志的输出形式没有强制约束,具有一定的不确定性,因此预置关键字规则的分析方式对该类具有不确定性的情况的处理效果较差,对超出预置规则的执行失败结果无法进行分类,对预置规则内的执行失败结果的分类准确性也不高,且不具备自学习与泛化能力,并且还要依赖于人工经验维护规则,增加了自动化结果分析的成本,效率有待提升。
针对上述问题,本公开实施例提供了一种测试结果分类模型训练方法。
图2示意性示出了根据本公开实施例的测试结果分类模型训练方法的流程图。
如图2所示,该方法包括操作S201~S203。
在操作S201,获取多个日志文本,其中,每个日志文本包括自动化测试执行失败的案例。
根据本公开的实施例,可以通过保存历史自动化测试执行失败案例的日志文本的方式获取多个日志文本。
在操作S202,根据多个日志文本生成训练样本数据集,其中,训练样本数据集中包括词向量矩阵以及词向量矩阵的标签信息。
根据本公开的实施例,可以将日志文本中的词转化为词向量矩阵,以便利用词向量矩阵训练待训练测试结果分类模型。
根据本公开的实施例,在生成词向量矩阵的同时,还可以生成与词向量矩阵同一名称不同后缀的标签文件,即与词向量矩阵对应的标签信息。
根据本公开的实施例,标签信息可以用于表征与词向量矩阵对应的自动化测试执行失败的原因。
在操作S203,利用训练样本数据集训练待训练测试结果分类模型,得到用于对自动化测试结果进行分类的测试结果分类模型。
根据本公开的实施例,待训练测试结果分类模型可以是预先搭建好的神经网络模型。
本公开实施例提供的测试结果分类模型训练方法,根据日志文本生成词向量矩阵,通过词向量矩阵对待训练测试结果分类模型进行训练,训练得到的测试结果分类模型对自动化测试结果具有分类准确度高的特点,所以至少部分地克服了相关技术中存在的分类效果不佳的技术问题。
下面参考图3~图9,结合具体实施例对图2所示的方法做进一步说明。
需要说明的是,本公开实施例中的流程图所示的操作除非明确说明不同操作之间存在执行的先后顺序,或者不同操作在技术实现上存在执行的先后顺序,否则,多个操作之间的执行顺序可以不分先后,多个操作也可以同时执行。
图3示意性示出了根据本公开实施例的根据日志文本生成训练样本数据集的流程图。
如图3所示,方法包括操作S301~S303。
在操作S301,对日志文本进行预处理,以删除日志文本中的干扰字符,得到删减日志文本。
根据本公开的实施例,干扰字符包括以下至少之一:标点符号、数字、预设目标字符。
根据本公开的实施例,预设目标字符可以包括例如语气助词、冠词、代词,但不限于此,预设目标字符还可以包括与日志文本的实际含义关联度不高的字符。
根据本公开的实施例,本领域技术人员可以根据实际应用的需求设置预设目标字符,本公开实施例不对预设目标字符做具体限定。
在操作S302,根据删减日志文本中的词数,将删减日志文本分割为至少一个分割日志文本。
在操作S303,生成与分割日志文本对应的至少一个词向量矩阵,其中,词向量矩阵的数量与分割日志文本的数量相同,词向量矩阵的一行表征分割日志文本中的一个词,训练样本数据集由至少一个词向量矩阵构成。
根据本公开的实施例,例如根据删减日志文本中的词数,将删减日志文本分割为第一分割日志文本、第二分割日志文本以及第三分割日志文本,然后可以根据第一分割日志文本,生成第一词向量矩阵,根据第二分割日志文本,生成第二词向量矩阵,根据第三分割日志文本,生成第三词向量矩阵。
根据本公开的实施例,当根据一个日志文本生成多个词向量矩阵的情况下,可以对多个词向量矩阵标注相同的标签信息。
图4示意性示出了根据本公开实施例的根据删减日志文本中的词数,将删减日志文本分割为至少一个分割日志文本的流程图。
如图4所示,方法包括操作S401~S404。
在操作S401,确定删减日志文本中的词数。
根据本公开的实施例,可以通过遍历删减日志文本中的词并计数的方式,确定删减日志文本中的词数。
在操作S402,判断删减日志文本中的词数是否小于等于预设阈值。
在删减日志文本中的词数小于等于预设阈值的情况下,执行操作S403,否则执行操作S404。
在操作S403,将删减日志文本确定为分割日志文本。
根据本公开的实施例,在删减日志文本中的词数小于预设阈值的情况下,可以对删减日志进行填充,以使填充后的删减日志中的词数等于预设阈值。
根据本公开的实施例,可以对删减日志进行0填充,例如,删减日志文本中的词数比预设阈值少5,则可以填充5个0至删减日志中,以使填充后的删减日志中的词数等于预设阈值。
在操作S404,利用预设滑动步长以及预设窗口长度的词窗口,将删减日志文本分割为多个分割日志文本。
根据本公开的实施例,预设窗口长度可以和预设阈值相等。
根据本公开的实施例,通过将预设窗口长度设置为和预没阈值相等,从而可以使利用词窗口生成的多个分割日志文本中的词数相同。
根据本公开实施例,利用预设滑动步长以及预设窗口长度的词窗口,将删减日志文本分割为多个分割日志文本包括:将词窗口以预设滑动步长,沿着构成删减日志文本的词的排列路径每滑动一次,确定一个分割日志文本。
根据本公开的实施例,可以将词窗口以预设滑动步长,沿着构成删减日志文本的词的排列路径每滑动一次,确定一个分割日志文本,直至词窗口滑动确定的分割日志文本的词数小于预设阈值。
根据本公开的实施例,对于词窗口滑动确定的词数小于预设阈值的分割日志文本,可以对该分割日志文本进行填充,以使该分割日志文本的词数等于预设阈值。
图5示意性示出了根据本公开实施例的根据日志文本生成训练样本数据集的示意图。
参照图5,String1可以表示日志文本,由于日志文本中除包括词,还包括干扰字符,例如数字、标点符号等与日志文本的实际含义关联度不高的内容,这些内容可能会在模型训练过程中造成数据污染,影响模型训练的效率,因此,可以对String1进行预处理,以删除String1中的干扰字符,得到删减日志文本String2。需要说明的是,图5中的英文字符为本公开实施例的日志文本的具体内容,英文字符仅作为本公开实施例的日志文本的一种示例。
在对String1进行预处理之后,可以通过遍历String2中的词并计数的方式,确定String2中的词数。本例中,预设阈值例如可以是20,由于String2中的词数为28,大于预设阈值,因此需要利用词窗口对String2进行分割。
在本示例中,词窗口的预设步长例如可以是5,词窗口的预设窗口长度例如可以是20。词窗口从开始端与String2中位置1的词、结束端与String2中位置20的词对应处开始滑动,确定出第一分割日志文本String21,String21中包括20个词,该20个词分别对应String2中位置1至位置20的词;然后,词窗口的开始端从String2中位置1以步长为5滑动,滑动至词窗口的开始端与String2中位置6的词、结束端与String2中位置25的词对应处,确定出第二分割日志文本String22,String22中包括20个词,该20个词分别对应String2中位置6至位置25的词;最后,词窗口从开始端对应String2中位置6的词以步长为5滑动,词窗口的开始端滑动至与String2中位置11的词对应处,而此时,由于String2中的词数为28,词窗口的结束端仅可以滑动至与String2中位置28对应的词处,词窗口此次滑动确定出第三分割日志文本String23,String23中包括18个词,该18个词分别对应String2中位置11至位置28的词。由于词窗口此次滑动确定的String23中的词数小于预设阈值20,词窗口滑动结束,利用预设滑动步长以及预设窗口长度的词窗口,将String2分割为3个分割日志文本。
对于String23,由于String23中的词数小于20,因此要在String23中填充2个0,以使String23中的词数等于预设阈值。
由于根据String2生成了String21、String22以及String23,所以,可以根据String21、String22以及String23分别生成第一词向量矩阵、第二词向量矩阵和第三词向量矩阵,其中,第一词向量矩阵、第二词向量矩阵和第三词向量矩阵的标签信息相同。
对于根据String21生成的第一词向量矩阵,第一词向量矩阵中第一行的参数[0.1,0.4,0.5,0.8]用于表征String21中的第一个词Exception。
至此,结合图5,对根据日志文本生成训练样本数据集的流程做出了示例性的说明,需要说明的是,上述示例仅用于帮助本领域技术人员理解本公开,而不应对本公开做出任何不当限定。
根据本公开的实施例,待训练测试结果分类模型包括卷积神经网络模型。
根据本公开的实施例,由于待训练测试结果分类模型是基于卷积神经网络构建的模型,因此,利用训练好的测试结果分类模型对自动化测试结果进行分类时,可以对多种输出形式的日志文本进行分类,实现了提高自动化测试结果分类的泛化能力的效果;并且,通过利用训练好的测试结果分类模型对自动化测试结果进行分类,无需以来人工经验维护规则,降低了人力成本。由于测试结果分类模型是基于神经网络搭建的,所以测试结果分类模型还具有自学习能力。
图6示意性示出了根据本公开实施例的待训练测试结果分类模型的示意图。
参照图6,卷积神经网络模型包括依次级联的输入层、第一卷积层、第一池化层、第二卷积层、第二池化层、全连接层以及输出层。
根据本公开的实施例,词向量矩阵通过输入层输入测试结果分类模型,并依次输入第一卷积层、第一池化层、第二卷积层、第二池化层,第一卷积层、第一池化层、第二卷积层、第二池化层分别输出第一特征map、第二特征map、第三特征map和第四特征map。
然后将第四特征map输入全连接层,全连接层可以包括多个输出神经元,多个输出神经元分别与标签信息所表征的自动化测试执行失败原因相对应。多个输出神经元分别对第四特征map进行计算,并分别输出计算结果,最终将多个计算结果中最大的计算结果输入至输出层,输出层输出与最大的计算结果相对应的自动化测试执行失败原因。
例如,全连接层包括四个输出神经元,输出神经元1至输出神经元4,其中,输出神经元1至输出神经元4表征的自动化测试执行失败原因可以分别为程序问题、被测环境异常、测试脚本问题、测试框架问题。神经元1至输出神经元4分别对第四特征map进行计算后,输出神经元3输出的计算结果最大,则将输出神经元3输出的计算结果输入至输出层,输出层输出与输出神经元3对应的自动化测试执行失败原因:测试脚本问题。
根据本公开的实施例,全连接层中多个输出神经元中的每个神经元可以均包括softmax激活函数。
根据本公开的实施例,输入层的输入神经元数量可以与词向量矩阵的维度相同。
根据本公开的实施例,第一卷积层和/或第二卷积层可以包括尺寸为4x4的卷积核。
根据本公开的实施例,第一卷积层和/或第二卷积层的计算过程可以用公式(1)表示。
S(i,j)=(I*K)(i,j)=∑m∑nI(i+m,j+n)K(m,n); (1)
其中,S表示当前卷积层的计算结果,I表示当前卷积层的上一层的输入数据,K表示卷积核,m、n表示卷积核的高和宽,i和j表示词向量矩阵中的元素位置。
对于一个词向量矩阵[Y1,Y2,Y3…Y19,Y20]T,利用第一卷积层和/或第二卷积层对该词向量矩阵的计算过程包括公式(2)、公式(3)和公式(4)。
ci=f(w·yi:i+h-1+b); (3)
c=[c1,c2,…,cn-h+1]; (4)
根据本公开的实施例,第一池化层和/或第二池化层可以包括最大池化层。
根据本公开的实施例,由于第一池化层和/或第二池化层包括最大池化层,从而可以提取第一特征map和/或第三特征map中重要的特征而忽略局部特征,简化计算量。
图7示意性示出了根据本公开实施例的利用训练样本数据集训练待训练测试结果分类模型,得到测试结果分类模型的流程图。
如图7所示,方法包括操作S701~S703。
在操作S701,将训练样本数据集划分为训练集和验证集。
在操作S702,利用训练集训练待训练测试结果分类模型,得到待验证测试结果分类模型。
在操作S703,利用验证集对待验证测试结果分类模型进行验证,得到用于表征分类准确率的验证结果,若验证结果不符合迭代停止条件,则继续对待验证测试结果分类模型进行训练,直至验证结果符合迭代停止条件,输出测试结果分类模型。
根据本公开的实施例,验证结果可以为待验证测试结果分类模型针对验证集中的词向量矩阵的分类准确率。
根据本公开的实施例,通过将训练样本数据集划分为训练集和验证集,并分别利用训练集和验证集对待训练测试结果分类模型和待验证测试结果分类模型进行训练和验证,从而可以避免测试结果分类模型的过拟合,提高模型的训练效率。
根据本公开的实施例,在对测试结果分类模型进行迭代训练的过程中,可以基于测试结果分类模型的输出值和标签信息,利用反向传播算法,迭代调整测试结果分类模型的网络参数,直至测试结果分类模型的输出值和标签信息的误差满足预设条件。
根据本公开的实施例,在反向传播过程中,测试结果分类模型第l层的误差项可以通过公式(5)计算得到。
δ(l)=((W(l))Tδ(l+1)+b(l))·f′(zl): (5)
根据本公开的实施例,标签信息包括:程序问题、被测环境异常、测试脚本问题、测试框架问题。
本公开实施例另一方面提供了一种自动化测试结果分类方法。
图8示意性示出了根据本公开实施例的自动化测试结果分类方法的流程图。
如图8所示,方法包括操作S801~S803。
在操作S801,获取待分类日志文本,待分类日志文本与执行失败的自动化测试项目对应。
在操作S802,根据待分类日志文本生成与待分类日志文本对应的目标词向量矩阵。以及
在操作S803,将目标词向量矩阵输入测试结果分类模型,输出分类结果,其中,测试结果分类模型由本公开实施例提供的的测试结果分类模型训练方法训练得到。
根据本公开的实施例,根据待分类日志文本生成与待分类日志文本对应的目标词向量矩阵的具体流程可以参照本公开实施例提供的测试结果分类模型训练方法,在此不再赘述。
根据本公开的实施例,在根据一个待分类日志文本生成多个与待分类日志文本对应的目标词向量矩阵的情况下,将目标词向量矩阵输入测试结果分类模型,输出分类结果包括以下操作:将多个词向量矩阵依次输入测试结果分类模型,直至测试结果分类模型输出分类结果。
根据本公开的实施例,在根据一个待分类日志文本生成三个目标词向量矩阵的情况下,可以先将第一目标词向量矩阵输入测试结果分类模型,若测试结果分类模型没有输出分类结果,然后将第二目标词向量矩阵输入测试结果分类模型,此时测试结果分类模型输出与第二目标词向量矩阵对应的分类结果,例如,测试脚本问题,则可以确定待分类日志文本可以被分类为测试脚本问题。
根据本公开的实施例,在操作S803中,分类结果中包括错误的分类结果。
根据本公开的实施例,由于在训练测试结果分类模型的过程中,无法考虑到所有类型的日志文本,所以可能导致测试结果分类模型无法对所有待分类日志文本均正确分类,因此存在错误的分类结果。
图9示意性示出了根据本公开实施例的优化测试结果分类模型的流程图。
如图9所示,方法包括操作S901~S902。
在操作S901,根据与错误的分类结果对应的目标词向量矩阵生成错误样本数据集,其中,错误样本数据集包括与错误的分类结果对应的目标词向量矩阵,以及目标词向量矩阵的标签信息。
在操作S902,利用错误样本数据集优化测试结果分类模型,得到优化测试结果分类模型。
图10示意性示出了根据本公开实施例的利用错误样本数据集优化测试结果分类模型,得到优化测试结果分类模型的流程图。
如图10所示,方法包括操作S1001~S1003。
在操作S1001,将错误样本数据集集划分为优化训练集和优化验证集。
在操作S1002,利用优化训练集训练测试结果分类模型,得到待优化验证测试结果分类模型。
在操作S1003,利用优化验证集对待优化验证测试结果分类模型进行验证,得到用于表征分类准确率的验证结果,若验证结果不符合迭代停止条件,则继续对待优化验证测试结果分类模型进行训练,直至验证结果符合迭代停止条件,输出优化测试结果分类模型。
图11示意性示出了根据本公开实施例的测试结果分类模型训练装置框图。
如图11所示,测试结果分类模型训练装置1100包括第一获取模块1101、第二获取模块1102以及训练模块1103。
第一获取模块1101,用于获取多个日志文本,其中,每个日志文本包括自动化测试执行失败的案例。
第二获取模块1102,用于根据多个日志文本生成训练样本数据集,其中,训练样本数据集中包括词向量矩阵以及词向量矩阵的标签信息。
训练模块1103,用于利用训练样本数据集训练待训练测试结果分类模型,得到用于对自动化测试结果进行分类的测试结果分类模型。
根据本公开的实施例,第二获取模块1102包括预处理子模块,分割子模块以及生成子模块。
预处理子模块,用于对日志文本进行预处理,以删除日志文本中的干扰字符,得到删减日志文本。
分割子模块,用于根据删减日志文本中的词数,将删减日志文本分割为至少一个分割日志文本。
生成子模块,用于生成与分割日志文本对应的至少一个词向量矩阵,其中,词向量矩阵的数量与分割日志文本的数量相同,词向量矩阵的一行表征分割日志文本中的一个词,训练样本数据集由至少一个词向量矩阵构成。
根据本公开的实施例,分割单元包括确定单元、删减单元以及滑动单元。
确定单元,用于确定删减日志文本中的词数。
删减单元,用于在删减日志文本中的词数小于等于预设阈值的情况下,将删减日志文本确定为分割日志文本。
滑动单元,用于在删减日志文本中的词数大于预设阈值的情况下,利用预设滑动步长以及预设窗口长度的词窗口,将删减日志文本分割为多个分割日志文本。
根据本公开的实施例,滑动单元包括确定子单元。
确定子单元,用于将词窗口以预设滑动步长,沿着构成删减日志文本的词的排列路径每滑动一次,确定一个分割日志文本。
根据本公开的实施例,待训练测试结果分类模型包括卷积神经网络模型;卷积神经网络模型包括依次级联的输入层、第一卷积层、第一池化层、第二卷积层、第二池化层、全连接层以及输出层。
根据本公开的实施例,训练模块1203包括划分单元、训练单元已以及验证单元。
划分单元,用于将训练样本数据集划分为训练集和验证集。
训练单元,用于利用训练集训练待训练测试结果分类模型,得到待验证测试结果分类模型。
验证单元,用于利用验证集对待验证测试结果分类模型进行验证,得到用于表征分类准确率的验证结果,若验证结果不符合迭代停止条件,则继续对待验证测试结果分类模型进行训练,直至验证结果符合迭代停止条件,输出测试结果分类模型。
根据本公开的实施例,标签信息包括:程序问题、被测环境异常、测试脚本问题、测试框架问题。
根据本公开的实施例,干扰字符包括以下至少之一:标点符号、数字、预设目标字符。
图12示意性示出了根据本公开实施例的测试结果分类装置框图。
如图12所示,测试结果分类模型训练装置1200包括第三获取模块1201、第四获取模块1202以及分类模块1203。
第三获取模块1201,用于获取待分类日志文本,待分类日志文本与执行失败的自动化测试项目对应。
第四获取模块1202,用于根据待分类日志文本生成与待分类日志文本对应的目标词向量矩阵。
分类模块1203,用于将目标词向量矩阵输入测试结果分类模型,输出分类结果,其中,测试结果分类模型由本公开实施例提供的测试结果分类模型训练方法训练得到。
根据本公开的实施例,在根据一个待分类日志文本生成多个与待分类日志文本对应的目标词向量矩阵的情况下,分类模块1203包括分类单元。
分类单元,用于将多个词向量矩阵依次输入测试结果分类模型,直至测试结果分类模型输出分类结果。
根据本公开的实施例,分类结果中包括错误的分类结果,测试结果分类模型训练装置1200还包括错误样本数据集生成模块以及优化模块。
错误样本数据集生成模块,用于根据与错误的分类结果对应的目标词向量矩阵生成错误样本数据集,其中,错误样本数据集包括与错误的分类结果对应的目标词向量矩阵,以及目标词向量矩阵的标签信息。
优化模块,用于利用错误样本数据集优化测试结果分类模型,得到优化测试结果分类模型。
根据本公开的实施例,优化模块包括第二划分单元、优化训练单元以及优化验证单元。
第二划分单元,用于将错误样本数据集集划分为优化训练集和优化验证集。
优化训练单元,用于利用优化训练集训练测试结果分类模型,得到待优化验证测试结果分类模型。
优化验证单元,用于利用优化验证集对待优化验证测试结果分类模型进行验证,得到用于表征分类准确率的验证结果,若验证结果不符合迭代停止条件,则继续对待优化验证测试结果分类模型进行训练,直至验证结果符合迭代停止条件,输出优化测试结果分类模型。
根据本公开的实施例的模块、子模块、单元、子单元中的任意多个、或其中任意多个的至少部分功能可以在一个模块中实现。根据本公开实施例的模块、子模块、单元、子单元中的任意一个或多个可以被拆分成多个模块来实现。根据本公开实施例的模块、子模块、单元、子单元中的任意一个或多个可以至少被部分地实现为硬件电路,例如现场可编程门阵列(FPGA)、可编程逻辑阵列(PLA)、片上系统、基板上的系统、封装上的系统、专用集成电路(ASIC),或可以通过对电路进行集成或封装的任何其他的合理方式的硬件或固件来实现,或以软件、硬件以及固件三种实现方式中任意一种或以其中任意几种的适当组合来实现。或者,根据本公开实施例的模块、子模块、单元、子单元中的一个或多个可以至少被部分地实现为计算机程序模块,当该计算机程序模块被运行时,可以执行相应的功能。
例如,第一获取模块1101、第二获取模块1102、训练模块1103、第三获取模块1201、第四获取模块1202以及分类模块1203中的任意多个可以合并在一个模块/单元/子单元中实现,或者其中的任意一个模块/单元/子单元可以被拆分成多个模块/单元/子单元。或者,这些模块/单元/子单元中的一个或多个模块/单元/子单元的至少部分功能可以与其他模块/单元/子单元的至少部分功能相结合,并在一个模块/单元/子单元中实现。根据本公开的实施例,第一获取模块1101、第二获取模块1102、训练模块1103、第三获取模块1201、第四获取模块1202以及分类模块1203中的至少一个可以至少被部分地实现为硬件电路,例如现场可编程门阵列(FPGA)、可编程逻辑阵列(PLA)、片上系统、基板上的系统、封装上的系统、专用集成电路(ASIC),或可以通过对电路进行集成或封装的任何其他的合理方式等硬件或固件来实现,或以软件、硬件以及固件三种实现方式中任意一种或以其中任意几种的适当组合来实现。或者,第一获取模块1101、第二获取模块1102、训练模块1103、第三获取模块1201、第四获取模块1202以及分类模块1203中的至少一个可以至少被部分地实现为计算机程序模块,当该计算机程序模块被运行时,可以执行相应的功能。
图13示意性示出了根据本公开实施例的适于实现上文描述的方法的电子设备的框图。图13示出的电子设备仅仅是一个示例,不应对本公开实施例的功能和使用范围带来任何限制。
如图13所示,根据本公开实施例的电子设备1300包括处理器1301,其可以根据存储在只读存储器(ROM)1302中的程序或者从存储部分1308加载到随机访问存储器(RAM)1303中的程序而执行各种适当的动作和处理。处理器1301例如可以包括通用微处理器(例如CPU)、指令集处理器和/或相关芯片组和/或专用微处理器(例如,专用集成电路(ASIC)),等等。处理器1301还可以包括用于缓存用途的板载存储器。处理器1301可以包括用于执行根据本公开实施例的方法流程的不同动作的单一处理单元或者是多个处理单元。
在RAM1303中,存储有电子设备1300操作所需的各种程序和数据。处理器1301、ROM1302以及RAM1303通过总线1304彼此相连。处理器1301通过执行ROM 1302和/或RAM1303中的程序来执行根据本公开实施例的方法流程的各种操作。需要注意,所述程序也可以存储在除ROM 1302和RAM 1303以外的一个或多个存储器中。处理器1301也可以通过执行存储在所述一个或多个存储器中的程序来执行根据本公开实施例的方法流程的各种操作。
根据本公开的实施例,电子设备1300还可以包括输入/输出(I/O)接口1305,输入/输出(I/O)接口305也连接至总线1304。电子设备1300还可以包括连接至I/O接口1305的以下部件中的一项或多项:包括键盘、鼠标等的输入部分1306;包括诸如阴极射线管(CRT)、液晶显示器(LCD)等以及扬声器等的输出部分1307;包括硬盘等的存储部分1308;以及包括诸如LAN卡、调制解调揣等的网络接口卡的通信部分1309。通信部分1309经由诸如因特网的网络执行通信处理。驱动器1310也根据需要连接至I/O接口1305。可拆卸介质1311,诸如磁盘、光盘、磁光盘、半导体存储器等等,根据需要安装在驱动器1310上,以便于从其上读出的计算机程序根据需要被安装入存储部分1308。
根据本公开的实施例,根据本公开实施例的方法流程可以被实现为计算机软件程序。例如,本公开的实施例包括一种计算机程序产品,其包括承载在计算机可读存储介质上的计算机程序,该计算机程序包含用于执行流程图所示的方法的程序代码。在这样的实施例中,该计算机程序可以通过通信部分1309从网络上被下载和安装,和/或从可拆卸介质1311被安装。在该计算机程序被处理器1301执行时,执行本公开实施例的系统中限定的上述功能。根据本公开的实施例,上文描述的系统、设备、装置、模块、单元等可以通过计算机程序模块来实现。
本公开还提供了一种计算机可读存储介质,该计算机可读存储介质可以是上述实施例中描述的设备/装置/系统中所包含的;也可以是单独存在,而未装配入该设备/装置/系统中。上述计算机可读存储介质承载有一个或者多个程序,当上述一个或者多个程序被执行时,实现根据本公开实施例的方法。
根据本公开的实施例,计算机可读存储介质可以是非易失性的计算机可读存储介质。例如可以包括但不限于:便携式计算机磁盘、硬盘、随机访问存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、便携式紧凑磁盘只读存储器(CD-ROM)、光存储器件、磁存储器件、或者上述的任意合适的组合。在本公开中,计算机可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。
例如,根据本公开的实施例,计算机可读存储介质可以包括上文描述的ROM 1302和/或RAM 1303和/或ROM 1302和RAM 1303以外的一个或多个存储器。
本公开的实施例还包括一种计算机程序产品,其包括计算机程序,该计算机程序包含用于执行本公开实施例所提供的方法的程序代码,当计算机程序产品在电子设备上运行时,该程序代码用于使电子设备实现本公开实施例所提供的字符识别模型的训练方法和字符识别方法。
在该计算机程序被处理器1301执行时,执行本公开实施例的系统/装置中限定的上述功能。根据本公开的实施例,上文描述的系统、装置、模块、单元等可以通过计算机程序模块来实现。
在一种实施例中,该计算机程序可以依托于光存储器件、磁存储器件等有形存储介质。在另一种实施例中,该计算机程序也可以在网络介质上以信号的形式进行传输、分发,并通过通信部分1309被下载和安装,和/或从可拆卸介质1311被安装。该计算机程序包含的程序代码可以用任何适当的网络介质传输,包括但不限于:无线、有线等等,或者上述的任意合适的组合。
根据本公开的实施例,可以以一种或多种程序设计语言的任意组合来编写用于执行本公开实施例提供的计算机程序的程序代码,具体地,可以利用高级过程和/或面向对象的编程语言、和/或汇编/机器语言来实施这些计算程序。程序设计语言包括但不限于诸如Java,C++,python,“C”语言或类似的程序设计语言。程序代码可以完全地在用户计算设备上执行、部分地在用户设备上执行、部分在远程计算设备上执行、或者完全在远程计算设备或服务器上执行。在涉及远程计算设备的情形中,远程计算设备可以通过任意种类的网络,包括局域网(LAN)或广域网(WAN),连接到用户计算设备,或者,可以连接到外部计算设备(例如利用因特网服务提供商来通过因特网连接)。
附图中的流程图和框图,图示了按照本公开各种实施例的系统、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段、或代码的一部分,上述模块、程序段、或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个接连地表示的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图或流程图中的每个方框、以及框图或流程图中的方框的组合,可以用执行规定的功能或操作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。本领域技术人员可以理解,本公开的各个实施例和/或权利要求中记载的特征可以进行多种组合和/或结合,即使这样的组合或结合没有明确记载于本公开中。特别地,在不脱离本公开精神和教导的情况下,本公开的各个实施例和/或权利要求中记载的特征可以进行多种组合和/或结合。所有这些组合和/或结合均落入本公开的范围。
Claims (17)
1.一种测试结果分类模型训练方法,包括:
获取多个日志文本,其中,每个所述日志文本包括自动化测试执行失败的案例;
根据所述多个日志文本生成训练样本数据集,其中,所述训练样本数据集中包括词向量矩阵以及所述词向量矩阵的标签信息;以及
利用所述训练样本数据集训练待训练测试结果分类模型,得到用于对自动化测试结果进行分类的测试结果分类模型。
2.根据权利要求1所述的方法,其中,所述根据所述日志文本生成训练样本数据集包括:
对所述日志文本进行预处理,以删除所述日志文本中的干扰字符,得到删减日志文本;
根据所述删减日志文本中的词数,将所述删减日志文本分割为至少一个分割日志文本;
生成与所述分割日志文本对应的至少一个词向量矩阵,其中,所述词向量矩阵的数量与所述分割日志文本的数量相同,所述词向量矩阵的一行表征所述分割日志文本中的一个词,所述训练样本数据集由至少一个所述词向量矩阵构成。
3.根据权利要求2所述的方法,其中,所述根据所述删减日志文本中的词数,将所述删减日志文本分割为至少一个分割日志文本包括:
确定所述删减日志文本中的词数;
在所述删减日志文本中的词数小于等于预设阈值的情况下,将所述删减日志文本确定为所述分割日志文本;
在所述删减日志文本中的词数大于所述预设阈值的情况下,利用预设滑动步长以及预设窗口长度的词窗口,将所述删减日志文本分割为多个所述分割日志文本。
4.根据权利要求3所述的方法,其中,所述利用预设滑动步长以及预设窗口长度的词窗口,将所述删减日志文本分割为多个所述分割日志文本包括:
将所述词窗口以所述预设滑动步长,沿着构成所述删减日志文本的词的排列路径每滑动一次,确定一个所述分割日志文本。
5.根据权利要求1所述的方法,其中,所述待训练测试结果分类模型包括卷积神经网络模型;
所述卷积神经网络模型包括依次级联的输入层、第一卷积层、第一池化层、第二卷积层、第二池化层、全连接层以及输出层。
6.根据权利要求1所述的方法,其中,所述利用所述训练样本数据集训练待训练测试结果分类模型,得到测试结果分类模型包括:
将所述训练样本数据集划分为训练集和验证集;
利用所述训练集训练所述待训练测试结果分类模型,得到待验证测试结果分类模型;
利用所述验证集对所述待验证测试结果分类模型进行验证,得到用于表征分类准确率的验证结果,若所述验证结果不符合迭代停止条件,则继续对所述待验证测试结果分类模型进行训练,直至所述验证结果符合迭代停止条件,输出所述测试结果分类模型。
7.根据权利要求1所述的方法,其中,所述标签信息包括:程序问题、被测环境异常、测试脚本问题、测试框架问题。
8.根据权利要求2所述的方法,其中,所述干扰字符包括以下至少之一:标点符号、数字、预设目标字符。
9.一种自动化测试结果分类方法,包括:
获取待分类日志文本,所述待分类日志文本与执行失败的自动化测试项目对应;
根据所述待分类日志文本生成与所述待分类日志文本对应的目标词向量矩阵;以及
将所述目标词向量矩阵输入测试结果分类模型,输出分类结果,其中,所述测试结果分类模型由权利要求1至8任一项所述的测试结果分类模型训练方法训练得到。
10.根据权利要求9所述的方法,
在根据一个所述待分类日志文本生成多个与所述待分类日志文本对应的目标词向量矩阵的情况下,所述将所述目标词向量矩阵输入测试结果分类模型,输出分类结果包括:
将所述多个词向量矩阵依次输入所述测试结果分类模型,直至所述测试结果分类模型输出分类结果。
11.根据权利要求9所述的方法,其中,所述分类结果中包括错误的分类结果,所述方法还包括:
根据与所述错误的分类结果对应的所述目标词向量矩阵生成错误样本数据集,其中,所述错误样本数据集包括与所述错误的分类结果对应的所述目标词向量矩阵,以及所述目标词向量矩阵的标签信息;
利用所述错误样本数据集优化所述测试结果分类模型,得到优化测试结果分类模型。
12.根据权利要求11所述的方法,其中,所述利用所述错误样本数据集优化所述测试结果分类模型,得到优化测试结果分类模型包括:
将所述错误样本数据集集划分为优化训练集和优化验证集;
利用所述优化训练集训练所述测试结果分类模型,得到待优化验证测试结果分类模型;
利用所述优化验证集对所述待优化验证测试结果分类模型进行验证,得到用于表征分类准确率的验证结果,若所述验证结果不符合迭代停止条件,则继续对所述待优化验证测试结果分类模型进行训练,直至所述验证结果符合迭代停止条件,输出所述优化测试结果分类模型。
13.一种测试结果分类模型训练装置,包括:
第一获取模块,用于获取多个日志文本,其中,每个所述日志文本包括自动化测试执行失败的案例;
第二获取模块,用于根据多个所述日志文本生成训练样本数据集,其中,所述训练样本数据集中包括词向量矩阵以及所述词向量矩阵的标签信息;
训练模块,用于利用所述训练样本数据集训练待训练测试结果分类模型,得到用于对自动化测试结果进行分类的测试结果分类模型。
14.一种测试结果分类装置,包括:
第三获取模块,用于获取待分类日志文本,所述待分类日志文本与执行失败的自动化测试项目对应;
第四获取模块,用于根据所述待分类日志文本生成与所述待分类日志文本对应的目标词向量矩阵;
分类模块,用于将所述目标词向量矩阵输入测试结果分类模型,输出分类结果,其中,所述测试结果分类模型由权利要求1至8任一项所述的测试结果分类模型训练方法训练得到。
15.一种电子设备,包括:
一个或多个处理器;
存储器,用于存储一个或多个指令,
其中,当所述一个或多个指令被所述一个或多个处理器执行时,使得所述一个或多个处理器实现权利要求1至12中任一项所述的方法。
16.一种计算机可读存储介质,其上存储有可执行指令,该指令被处理器执行时使处理器实现权利要求1至12中任一项所述的方法。
17.一种计算机程序产品,所述计算机程序产品包括计算机可执行指令,所述指令在被执行时用于实现权利要求1至12中任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110542887.7A CN113515625A (zh) | 2021-05-18 | 2021-05-18 | 测试结果分类模型训练方法、分类方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110542887.7A CN113515625A (zh) | 2021-05-18 | 2021-05-18 | 测试结果分类模型训练方法、分类方法及装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN113515625A true CN113515625A (zh) | 2021-10-19 |
Family
ID=78064693
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110542887.7A Pending CN113515625A (zh) | 2021-05-18 | 2021-05-18 | 测试结果分类模型训练方法、分类方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113515625A (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114461735A (zh) * | 2022-04-13 | 2022-05-10 | 天津中新智冠信息技术有限公司 | 工矿数据分级分类方法、装置和计算机设备 |
CN115270125A (zh) * | 2022-08-11 | 2022-11-01 | 江苏安超云软件有限公司 | Ids日志分类预测方法、装置、设备及存储介质 |
Citations (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108427720A (zh) * | 2018-02-08 | 2018-08-21 | 中国科学院计算技术研究所 | 系统日志分类方法 |
CN108595643A (zh) * | 2018-04-26 | 2018-09-28 | 重庆邮电大学 | 基于多分类节点卷积循环网络的文本特征提取及分类方法 |
CN110222171A (zh) * | 2019-05-08 | 2019-09-10 | 新华三大数据技术有限公司 | 一种分类模型应用、分类模型训练方法及装置 |
CN110262942A (zh) * | 2019-06-13 | 2019-09-20 | 腾讯科技(成都)有限公司 | 一种日志分析方法及装置 |
CN110909164A (zh) * | 2019-11-22 | 2020-03-24 | 科大国创软件股份有限公司 | 一种基于卷积神经网络的文本增强语义分类方法及系统 |
CN111475642A (zh) * | 2020-02-29 | 2020-07-31 | 新华三大数据技术有限公司 | 一种文本分类方法、装置及模型训练方法 |
CN111737495A (zh) * | 2020-06-28 | 2020-10-02 | 福州数据技术研究院有限公司 | 基于领域自分类的中高端人才智能推荐系统及其方法 |
CN111949530A (zh) * | 2020-08-07 | 2020-11-17 | 北京灵汐科技有限公司 | 测试结果的预测方法、装置、计算机设备及存储介质 |
CN112434965A (zh) * | 2020-12-04 | 2021-03-02 | 广东电力信息科技有限公司 | 一种基于词频的专家标签产生方法、装置、终端 |
CN112528643A (zh) * | 2020-12-14 | 2021-03-19 | 上海栖盟科技有限公司 | 一种基于神经网络的文本信息提取方法及装置 |
CN112749274A (zh) * | 2019-10-30 | 2021-05-04 | 中南大学 | 基于注意力机制和干扰词删除的中文文本分类方法 |
-
2021
- 2021-05-18 CN CN202110542887.7A patent/CN113515625A/zh active Pending
Patent Citations (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108427720A (zh) * | 2018-02-08 | 2018-08-21 | 中国科学院计算技术研究所 | 系统日志分类方法 |
CN108595643A (zh) * | 2018-04-26 | 2018-09-28 | 重庆邮电大学 | 基于多分类节点卷积循环网络的文本特征提取及分类方法 |
CN110222171A (zh) * | 2019-05-08 | 2019-09-10 | 新华三大数据技术有限公司 | 一种分类模型应用、分类模型训练方法及装置 |
CN110262942A (zh) * | 2019-06-13 | 2019-09-20 | 腾讯科技(成都)有限公司 | 一种日志分析方法及装置 |
CN112749274A (zh) * | 2019-10-30 | 2021-05-04 | 中南大学 | 基于注意力机制和干扰词删除的中文文本分类方法 |
CN110909164A (zh) * | 2019-11-22 | 2020-03-24 | 科大国创软件股份有限公司 | 一种基于卷积神经网络的文本增强语义分类方法及系统 |
CN111475642A (zh) * | 2020-02-29 | 2020-07-31 | 新华三大数据技术有限公司 | 一种文本分类方法、装置及模型训练方法 |
CN111737495A (zh) * | 2020-06-28 | 2020-10-02 | 福州数据技术研究院有限公司 | 基于领域自分类的中高端人才智能推荐系统及其方法 |
CN111949530A (zh) * | 2020-08-07 | 2020-11-17 | 北京灵汐科技有限公司 | 测试结果的预测方法、装置、计算机设备及存储介质 |
CN112434965A (zh) * | 2020-12-04 | 2021-03-02 | 广东电力信息科技有限公司 | 一种基于词频的专家标签产生方法、装置、终端 |
CN112528643A (zh) * | 2020-12-14 | 2021-03-19 | 上海栖盟科技有限公司 | 一种基于神经网络的文本信息提取方法及装置 |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114461735A (zh) * | 2022-04-13 | 2022-05-10 | 天津中新智冠信息技术有限公司 | 工矿数据分级分类方法、装置和计算机设备 |
CN115270125A (zh) * | 2022-08-11 | 2022-11-01 | 江苏安超云软件有限公司 | Ids日志分类预测方法、装置、设备及存储介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US12039280B2 (en) | Multi-turn dialogue response generation with persona modeling | |
US11720346B2 (en) | Semantic code retrieval using graph matching | |
US11068658B2 (en) | Dynamic word embeddings | |
CN110390408A (zh) | 交易对象预测方法和装置 | |
US11574250B2 (en) | Classification of erroneous cell data | |
US11694029B2 (en) | Neologism classification techniques with trigrams and longest common subsequences | |
US20230297784A1 (en) | Automated decision modelling from text | |
CN114357170A (zh) | 模型训练方法、分析方法、装置、设备及介质 | |
CN113515625A (zh) | 测试结果分类模型训练方法、分类方法及装置 | |
CN114358147A (zh) | 异常账户识别模型的训练方法、识别方法、装置及设备 | |
CN113434683A (zh) | 文本分类方法、装置、介质及电子设备 | |
US11880798B2 (en) | Determining section conformity and providing recommendations | |
US20230063686A1 (en) | Fine-grained stochastic neural architecture search | |
CN116720489B (zh) | 页面填充方法及装置、电子设备和计算机可读存储介质 | |
US20220171985A1 (en) | Item recommendation with application to automated artificial intelligence | |
CN113448821B (zh) | 一种识别工程缺陷的方法和装置 | |
CN114036921A (zh) | 一种政策信息匹配方法和装置 | |
US20230206114A1 (en) | Fair selective classification via a variational mutual information upper bound for imposing sufficiency | |
US20230186072A1 (en) | Extracting explanations from attention-based models | |
CN112115212B (zh) | 参数识别方法、装置和电子设备 | |
US20230066807A1 (en) | Automatic generation of attribute sets for counterfactual explanations | |
CN110610392A (zh) | 数据处理方法及系统、计算机系统和计算机可读存储介质 | |
CN114637921B (zh) | 基于建模偶然不确定性的物品推荐方法、装置和设备 | |
US20240311267A1 (en) | Efficient hardware accelerator configuration exploration | |
US20220156638A1 (en) | Enhancing data generation with retinforcement learning |
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 |