CN117688441A - 代码缺陷分类方法、装置、电子设备及存储介质 - Google Patents
代码缺陷分类方法、装置、电子设备及存储介质 Download PDFInfo
- Publication number
- CN117688441A CN117688441A CN202311606398.9A CN202311606398A CN117688441A CN 117688441 A CN117688441 A CN 117688441A CN 202311606398 A CN202311606398 A CN 202311606398A CN 117688441 A CN117688441 A CN 117688441A
- Authority
- CN
- China
- Prior art keywords
- text
- defect
- detected
- classification
- word segmentation
- 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
- 230000007547 defect Effects 0.000 title claims abstract description 264
- 238000000034 method Methods 0.000 title claims abstract description 51
- 230000011218 segmentation Effects 0.000 claims abstract description 83
- 238000012545 processing Methods 0.000 claims abstract description 59
- 238000013145 classification model Methods 0.000 claims abstract description 26
- 239000013598 vector Substances 0.000 claims description 21
- 238000004590 computer program Methods 0.000 claims description 11
- 238000004364 calculation method Methods 0.000 claims description 8
- 230000002950 deficient Effects 0.000 claims description 6
- 239000000284 extract Substances 0.000 claims description 3
- 238000012360 testing method Methods 0.000 claims description 2
- 230000009286 beneficial effect Effects 0.000 abstract description 5
- 238000005516 engineering process Methods 0.000 abstract description 4
- 230000008569 process Effects 0.000 description 10
- 238000010586 diagram Methods 0.000 description 8
- 230000006870 function Effects 0.000 description 6
- 238000004891 communication Methods 0.000 description 4
- 230000003287 optical effect Effects 0.000 description 4
- 238000013527 convolutional neural network Methods 0.000 description 3
- 238000000605 extraction Methods 0.000 description 3
- 230000006872 improvement Effects 0.000 description 3
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 230000000644 propagated effect Effects 0.000 description 2
- 239000004065 semiconductor Substances 0.000 description 2
- 238000013522 software testing Methods 0.000 description 2
- 238000012549 training Methods 0.000 description 2
- 230000002159 abnormal effect Effects 0.000 description 1
- 230000005856 abnormality Effects 0.000 description 1
- 230000003416 augmentation Effects 0.000 description 1
- 230000008901 benefit Effects 0.000 description 1
- 238000004422 calculation algorithm Methods 0.000 description 1
- 230000001419 dependent effect Effects 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 230000018109 developmental process Effects 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 239000000835 fiber Substances 0.000 description 1
- 230000010354 integration Effects 0.000 description 1
- 238000002372 labelling Methods 0.000 description 1
- 239000004973 liquid crystal related substance Substances 0.000 description 1
- 238000013507 mapping Methods 0.000 description 1
- 239000013307 optical fiber Substances 0.000 description 1
- 230000009295 sperm incapacitation Effects 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
- 238000012795 verification Methods 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/24—Classification techniques
- G06F18/241—Classification techniques relating to the classification model, e.g. parametric or non-parametric approaches
-
- 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
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/20—Natural language analysis
- G06F40/279—Recognition of textual entities
- G06F40/289—Phrasal analysis, e.g. finite state techniques or chunking
-
- 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/0464—Convolutional networks [CNN, ConvNet]
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Artificial Intelligence (AREA)
- Data Mining & Analysis (AREA)
- Computational Linguistics (AREA)
- Evolutionary Computation (AREA)
- Health & Medical Sciences (AREA)
- Life Sciences & Earth Sciences (AREA)
- General Health & Medical Sciences (AREA)
- Molecular Biology (AREA)
- Software Systems (AREA)
- Quality & Reliability (AREA)
- Biophysics (AREA)
- Biomedical Technology (AREA)
- Computing Systems (AREA)
- Mathematical Physics (AREA)
- Computer Hardware Design (AREA)
- Audiology, Speech & Language Pathology (AREA)
- Bioinformatics & Cheminformatics (AREA)
- Bioinformatics & Computational Biology (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Evolutionary Biology (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明公开了一种代码缺陷分类方法、装置、电子设备及存储介质,涉及计算机技术,该方法包括:获取至少一个待测缺陷文本,对每个待测缺陷文本分别进行文本处理,获得每个待测缺陷文本对应的分词文本;然后将每个待测缺陷文本对应的分词文本输入至文本分类模型,获得每个待测缺陷文本对应的缺陷分类结果。本实施例通过文本分类模型对待测缺陷文本进行自动化分类的方式,可提高缺陷分类的工作效率;且通过对待测缺陷文本进行分词处理的方式,可提高缺陷分类的准确率。解决了现有方案中需人工进行手动分类的问题,取到了提高工作效率,提升准确率的有益效果。
Description
技术领域
本发明涉及计算机技术领域,尤其涉及一种代码缺陷分类方法、装置、电子设备及存储介质。
背景技术
软件测试是软件工程生命周期中保证软件质量的中间重要环节,更是业务与技术融合的前沿。在数字化时代,软件测试在保证质量和效率的同时,更加注重赋能。因此,代码缺陷作为软件测试的重要环节决定了软件产品的质量,而代码缺陷分类技术是提升缺陷识别的有限途径,也对开发人员提供一定的正向反馈,可大幅减少后续迭代开发过程的中的缺陷数量。
现有的代码缺陷分类方式多依赖于测试人员手动分类,测试人员根据系统反馈的缺陷文本主观认定当前缺陷所属类型,以便于后续根据统计的缺陷类型进行复盘工作。但是,现有进行人工分类的方式,因同一软件产品的缺陷数据中可能出现多种影响分类的词汇,测试人员需主观判定当前所属分类,容易分类错误。同时,通常采用的一个分类一人复核的方式,工作量极大,工作效率低下。
发明内容
本发明提供一种代码缺陷分类方法、装置、电子设备及存储介质,能够改善现有对代码缺陷进行分类的方案。
第一方面,本发明提供一种代码缺陷分类方法,包括:
获取至少一个待测缺陷文本,对每个所述待测缺陷文本分别进行文本处理,获得每个所述待测缺陷文本对应的分词文本;
将每个所述待测缺陷文本对应的分词文本输入至文本分类模型,获得每个所述待测缺陷文本对应的缺陷分类结果。
一实施例中,所述对每个所述待测缺陷文本分别进行文本处理,获得每个所述待测缺陷文本对应的分词文本,包括:
对每个所述待测缺陷文本进行停用词去除处理,获得每个所述待测缺陷文本对应的第一文本;
对每个所述第一文本进行分词处理,获得每个所述待测缺陷文本对应的分词文本。
一实施例中,在获取至少一个待测缺陷文本之前,还包括:
获取至少一个缺陷关键词,对每个所述的缺陷关键词进行文本扩充,获得每个所述缺陷关键词对应的至少一个缺陷扩充语句。
一实施例中,所述对每个所述第一文本进行分词处理,获得每个所述待测缺陷文本对应的分词文本,包括:
基于至少一个所述缺陷扩充语句对所述第一文本进行分词处理,获得每个所述待测缺陷文本对应的分词文本。
一实施例中,将每个所述待测缺陷文本对应的分词文本输入至文本分类模型,获得每个所述待测缺陷文本对应的缺陷分类结果,包括:
所述文本分类模型对每个分词文本及进行特征提取,获得每个所述分词文本对应的词向量;
对每个所述分词文本对应的词向量进行向量计算,获得每个所述待测缺陷文本对应的缺陷分类结果。
一实施例中,所述缺陷分类结果包括至少一个;
所述获得每个所述待测缺陷文本对应的缺陷分类结果,包括:
获得所述待测缺陷文本属于每个所述缺陷分类结果对应的概率。
一实施例中,所述方法还包括:
获取每个所述缺陷分类结果对应的概率的概率数值;
将所述概率数值最大的缺陷分类结果作为目标缺陷分类结果。
第二方面,本发明提供一种代码缺陷分类装置,所述装置包括:
文本处理模块,用于获取至少一个待测缺陷文本,对每个所述待测缺陷文本分别进行文本处理,获得每个所述待测缺陷文本对应的分词文本;
缺陷分类模块,用于将每个所述待测缺陷文本对应的分词文本输入至文本分类模型,获得每个所述待测缺陷文本对应的缺陷分类结果。
第三方面,本发明还提供了一种电子设备,所述电子设备包括:
至少一个处理器;以及
与所述至少一个处理器通信连接的存储器;其中,
所述存储器存储有可被所述至少一个处理器执行的计算机程序,所述计算机程序被所述至少一个处理器执行,以使所述至少一个处理器能够执行本发明任一实施例所述的代码缺陷分类方法。
第四方面,本发明还提供了一种计算机可读存储介质,所述计算机可读存储介质存储有计算机指令,所述计算机指令用于使处理器执行时实现本发明任一实施例所述的代码缺陷分类方法。
本发明实施例提供的代码缺陷分类方案,首先获取至少一个待测缺陷文本,对每个待测缺陷文本分别进行文本处理,获得每个待测缺陷文本对应的分词文本;然后将每个待测缺陷文本对应的分词文本输入至文本分类模型,获得每个待测缺陷文本对应的缺陷分类结果。本实施例通过文本分类模型对待测缺陷文本进行自动化分类的方式,可提高缺陷分类的工作效率;且通过对待测缺陷文本进行分词处理的方式,可提高缺陷分类的准确率。解决了现有方案中需人工进行手动分类的问题,取到了提高工作效率,提升准确率的有益效果。
应当理解,本部分所描述的内容并非旨在标识本发明的实施例的关键或重要特征,也不用于限制本发明的范围。本发明的其它特征将通过以下的说明书而变得容易理解。
附图说明
为了更清楚地说明本发明的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,应当理解,以下附图仅示出了本发明的某些实施例,因此不应被看作是对范围的限定,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他相关的附图。
图1是本发明提供的代码缺陷分类方法的一个流程示意图;
图2是本发明提供的代码缺陷分类装置的一个结构示意图;
图3是本发明提供的电子设备的一个结构示意图。
具体实施方式
为了使本技术领域的人员更好地理解本发明方案,下面将结合本实施例中的附图,对本发明中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分的实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都应当属于本发明保护的范围。
需要说明的是,本发明的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本发明的实施例能够以除了在这里图示或描述的那些以外的顺序实施。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。
下面结合附图和实施例对本发明作进一步的详细说明。可以理解的是,此处所描述的具体实施例仅仅用于解释本发明,而非对本发明的限定。另外还需要说明的是,为了便于描述,附图中仅示出了与本发明相关的部分而非全部结构。
图1为本发明提供的代码缺陷分类方法的一个流程示意图,本实施例可适用于对代码缺陷进行分类的情况,该方法可以由代码缺陷分类装置来执行,该装置可以采用硬件和/或软件的形式实现,该装置可配置于服务器等计算机设备中。参考图1,该方法具体可以包括如下步骤:
S110、获取至少一个待测缺陷文本,对每个待测缺陷文本分别进行文本处理,获得每个待测缺陷文本对应的分词文本。
代码缺陷指示对软件产品预期属性的偏离,包括可改进的细节、或与需求文档存在异常的功能实现等,在系统测试执行阶段产生,需对代码缺陷进行总结,并整理归档。
在代码运行过程中可能因人员代码编写错误、系统接口调用错误或系统异常时,导致代码无法正常运行产生的代码运行错误的反馈文本。示例性地,缺陷文本可以内容可以为“第m行代码未找到调用接口”、“第n行代码结构化查询语言(Structured QueryLanguage,简称SQL)错误”、“第h行代码字段展示出错”以及“第i行代码字段文档错误”等,具体待测缺陷文本的展示内容以及展示形式在此不做限制。
一般地,在一次代码运行过程中,可能产生有多个有缺陷文本,为便于对缺陷文本进行分类,通过本实施例提供的代码缺陷分类方案,可将一次代码运行过程中产生的所有缺陷文本进行快速准确的分类,在本实施例中,待进行分类的文本称为待测缺陷文本。
因待测缺陷文本中一般包含的字数或词语较多,为提高缺陷分类的准确率,一般需先对每个待测缺陷文本分别进行文本处理,从而获得每个待测缺陷文本对应的分词文本。在本实施例中,文本处理的方式可以包括去停用词处理、分词处理、特征提取处理以及向量化处理等,具体文本处理的方式在此不做限制。
具体地,上述对每个待测缺陷文本分别进行文本处理,从而获得每个待测缺陷文本对应的分词文本可通过如下方式实现:对每个待测缺陷文本进行停用词去除处理,获得每个待测缺陷文本对应的第一文本;对每个第一文本进行分词处理,获得每个待测缺陷文本对应的分词文本。在本实施例中,通过去停用词处理可以将与缺陷分类关键词无关的词汇摘除,可极大增加文本分类的成功概率;通过分词处理可以快速获取缺陷文本特征。其中,分词文本指示对待测缺陷文本进行去停用词处理和分词处理之后获得的文本。
上述去停用词可以指示在文本中包含有标点符号时,如“,。、?”,或者包含有数字“12345”,包含有感叹词“啊,哇,哈哈”,以及包含有转折词“虽然,但是,所以”等次时,该类词语统称为停用词。这些种类的词并不能表示一个主题,所以对用文本分类来说没有作用,因此在处理分词前要将其去掉,以简化待测试缺陷文本,从而可获得每个待测缺陷文本对应的第一文本。
在本实施例中,对每个第一文本进行分词处理的方式可以为,可基于分词模型对第一文本进行分词处理。可选地,本实施例使用的分词模型可以为最大熵马尔科夫模型(Maximum Entropy Markov Model,简称MEMM)、维特比算法模型,以及结巴分词器等,具体使用的分词模型在此不做限制。
可选地,在本实施例使用分词模型对第一文本进行分词处理之前,还包括:获取至少一个缺陷关键词,对每个的缺陷关键词进行文本扩充,获得每个缺陷关键词对应的至少一个缺陷扩充语句。这样做的目的在于,有助于在后续基本缺陷扩充语句对第一文本进行分词处理,进一步增加文本分词准确性,同时提高文本分类的成功概率。
当前缺陷关键词可以为从缺陷样本中提取的关键词,缺陷样本指示已积累的常见代码缺陷文本。其中,当前已积累的常见代码缺陷文本可以为历史一段时间内的积累文本,如,过去一年、半年或三个月等,具体历史时长的选取在此不做限制。上述缺陷样本可以为进行缺陷分类后的文本,其中,缺陷分类可根据所属层级的不同呈树状分类,如可包含一级分类、二级分类以及三级分类等。其中,一级分类可以为用户界面缺陷、代码质量问题、需求质量问题、软件改进问题等等。具体一级分类对应的分类内容在此不做限制。进一步地,每个一级分类中包含有多个二级分类。示例性地,用户界面缺陷对应的二级分类包括包括用户体验差、功能主流程不通、客户账号不安全、性能异常等;代码质量问题对应的二级分类可以包括逻辑错误、语句错误、调用接口错误以及接口字段使用错误等;需求质量问题对应的二级分类可以包括有需求内容有歧义、隐含需求未实现以及部分需求未实现等;软件改进问题对应的二级分类可以包括字符错误、缺少一致性校验以及生僻字不支持等。具体每个一级分类所包含的二级分类的分类内容和分类数量在此不做限制。进一步地,在每个二级分类中可包含有多个三级分类,当前三级分类可指示每个缺陷样本中对应的关键词。示例性地,性能异常对应的三级分类可以包括加载慢、卡顿以及连接数等;调用接口错误对应的三级分类可以包括接口报错、数据不匹配、数据未展示以及接口异常等;需求内容有歧义对应的三级分类可以包括不一致、未体现以及查不到等;生僻字不支持对应的三级分类可以包括生僻字、字体不显示、乱码、显示为X、显示为口以及显示为*等。具体每个二级分类所包含的三级分类的分类内容和分类数量在此不做限制。
相应地,本实施例提供的方案,还可基于至少一个缺陷扩充语句对第一文本进行分词处理,获得每个待测缺陷文本对应的分词文本。基于至少一个缺陷扩充语句对第一文本进行分词处理的好处在于,能够通过参考缺陷扩充语句提供多种分词可能,以在后续步骤中,有助于提升缺陷分类的准确性。
S120、将每个待测缺陷文本对应的分词文本输入至文本分类模型,获得每个待测缺陷文本对应的缺陷分类结果。
文本分类模型(Text-CNN模型)是通过卷积神经网络对已标记缺陷分类结果的缺陷样本训练之后获得的,其中,已标记缺陷分类结果可以包括已标记的一级分类、已标记的二级分类以及已标记的三级分类结果等。
在本实施例中,当前步骤S120可由如下方式实现:文本分类模型对每个分词文本及进行特征提取,获得每个分词文本对应的词向量;对每个分词文本对应的词向量进行向量计算,获得每个待测缺陷文本对应的缺陷分类结果。本实施例可首先向Text-CNN模型的输入层需要每个待测缺陷文本对应的分词文本,提取每个待测缺陷文本对应的分词文本中的文本序列,进一步根据文本序列获得词向量,并采用Word2vec工具进行词向量映射,并根据向量的维度和卷积核对向量进行计算,获得每个分词文本对应的词向量与缺陷分类结果对应的向量相似度,根据相似度结果获得每个待测缺陷文本对应的缺陷分类结果。
具体地,缺陷分类结果包括至少一个;获得每个待测缺陷文本对应的缺陷分类结果,包括:获得待测缺陷文本属于每个缺陷分类结果对应的概率。进一步地本实施例提供的方案还包括:获取每个缺陷分类结果对应的概率的概率数值;将概率数值最大的缺陷分类结果作为目标缺陷分类结果。即,经本实施例提供的方案,待测缺陷文本对应的缺陷分类结果并非一个结果,输出的是每个缺陷分类对应的概率数值,以根据概率数值确定目标分类结果。对Text-CNN文本分类模型在训练模型特征选择上过往已积累且完成分类的代码缺陷,使得该模型对代码缺陷分类的成功率大幅增加。
可选地,本方案中,对于明显属于A缺陷分类的待测缺陷文本,经文本分类模型输出为B缺陷分类,则可经人工标注之后对文本分类模型进行重新训练,以提高模型分类的准确度。
本实施例提供的代码缺陷分类方法,首先获取至少一个待测缺陷文本,对每个待测缺陷文本分别进行文本处理,获得每个待测缺陷文本对应的分词文本;然后将每个待测缺陷文本对应的分词文本输入至文本分类模型,获得每个待测缺陷文本对应的缺陷分类结果。本实施例通过文本分类模型对待测缺陷文本进行自动化分类的方式,可提高缺陷分类的工作效率;且通过对待测缺陷文本进行分词处理的方式,可提高缺陷分类的准确率。解决了现有方案中需人工进行手动分类的问题,取到了提高工作效率,提升准确率的有益效果。
图2是本发明提供的代码缺陷分类装置的一个结构示意图,该装置适用于执行本实施例提供的代码缺陷分类方法。如图2所示,该装置具体可以包括:文本处理模块210和缺陷分类模块220,其中:
文本处理模块210,用于获取至少一个待测缺陷文本,对每个所述待测缺陷文本分别进行文本处理,获得每个所述待测缺陷文本对应的分词文本;
缺陷分类模块220,用于将每个所述待测缺陷文本对应的分词文本输入至文本分类模型,获得每个所述待测缺陷文本对应的缺陷分类结果。
本实施例提供的代码缺陷分类装置,首先获取至少一个待测缺陷文本,对每个待测缺陷文本分别进行文本处理,获得每个待测缺陷文本对应的分词文本;然后将每个待测缺陷文本对应的分词文本输入至文本分类模型,获得每个待测缺陷文本对应的缺陷分类结果。本实施例通过文本分类模型对待测缺陷文本进行自动化分类的方式,可提高缺陷分类的工作效率;且通过对待测缺陷文本进行分词处理的方式,可提高缺陷分类的准确率。解决了现有方案中需人工进行手动分类的问题,取到了提高工作效率,提升准确率的有益效果。
一实施例中,文本处理模块210包括停用词处理单元和分词处理单元,其中:
停用词处理单元,用于对每个所述待测缺陷文本进行停用词去除处理,获得每个所述待测缺陷文本对应的第一文本;
分词处理单元,用于对每个所述第一文本进行分词处理,获得每个所述待测缺陷文本对应的分词文本。
一实施例中,所述装置还包括:文本扩充模块,其中:
文本扩充模块,用于获取至少一个缺陷关键词,对每个所述的缺陷关键词进行文本扩充,获得每个所述缺陷关键词对应的至少一个缺陷扩充语句。
一实施例中,所述分词处理单元,具体用于基于至少一个所述缺陷扩充语句对所述第一文本进行分词处理,获得每个所述待测缺陷文本对应的分词文本。
一实施例中,缺陷分类模块220包括特征提取单元和向量计算单元,其中:
特征提取单元,用于所述文本分类模型对每个分词文本及进行特征提取,获得每个所述分词文本对应的词向量;
向量计算单元,用于对每个所述分词文本对应的词向量进行向量计算,获得每个所述待测缺陷文本对应的缺陷分类结果。
一实施例中,所述缺陷分类结果包括至少一个;
向量计算单元,还用于获得所述待测缺陷文本属于每个所述缺陷分类结果对应的概率。
一实施例中,缺陷分类模块220还包括概率获取单元和缺陷分类单元,其中:
概率获取单元,用于获取每个所述缺陷分类结果对应的概率的概率数值;
缺陷分类单元,用于将所述概率数值最大的缺陷分类结果作为目标缺陷分类结果。
本领域的技术人员可以清楚地了解到,为描述的方便和简洁,仅以上述各功能模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能模块完成,即将装置的内部结构划分成不同的功能模块,以完成以上描述的全部或者部分功能。上述描述功能模块的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
本发明还提供了一种电子设备,所述电子设备包括:至少一个处理器;以及与所述至少一个处理器通信连接的存储器;其中,所述存储器存储有可被所述至少一个处理器执行的计算机程序,所述计算机程序被所述至少一个处理器执行,以使所述至少一个处理器能够执行本发明任一实施例所述的代码缺陷分类方法。
本发明还提供了一种计算机可读介质,所述计算机可读存储介质存储有计算机指令,所述计算机指令用于使处理器执行时实现本发明任一实施例所述的代码缺陷分类方法。
下面参考图3,其示出了适于用来实现本发明的电子设备的计算机系统500的结构示意图。图3示出的电子设备仅仅是一个示例,不应对本实施例的功能和使用范围带来任何限制。
如图3所示,计算机系统500包括中央处理单元(CPU)501,其可以根据存储在只读存储器(ROM)502中的程序或者从存储部分508加载到随机访问存储器(RAM)503中的程序而执行各种适当的动作和处理。在RAM 503中,还存储有系统500操作所需的各种程序和数据。CPU 501、ROM 502以及RAM 503通过总线504彼此相连。输入/输出(I/O)接口505也连接至总线504。
以下部件连接至I/O接口505:包括键盘、鼠标等的输入部分506;包括诸如阴极射线管(CRT)、液晶显示器(LCD)等以及扬声器等的输出部分507;包括硬盘等的存储部分508;以及包括诸如LAN卡、调制解调器等的网络接口卡的通信部分509。通信部分509经由诸如因特网的网络执行通信处理。驱动器510也根据需要连接至I/O接口505。可拆卸介质511,诸如磁盘、光盘、磁光盘、半导体存储器等等,根据需要安装在驱动器510上,以便于从其上读出的计算机程序根据需要被安装入存储部分508。
特别地,根据本发明公开的实施例,上文参考流程图描述的过程可以被实现为计算机软件程序。例如,本发明公开的实施例包括一种计算机程序产品,其包括承载在计算机可读介质上的计算机程序,该计算机程序包含用于执行流程图所示的方法的程序代码。在这样的实施例中,该计算机程序可以通过通信部分509从网络上被下载和安装,和/或从可拆卸介质511被安装。在该计算机程序被中央处理单元(CPU)501执行时,执行本发明的系统中限定的上述功能。
需要说明的是,本发明所示的计算机可读介质可以是计算机可读信号介质或者计算机可读存储介质或者是上述两者的任意组合。计算机可读存储介质例如可以是——但不限于——电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。计算机可读存储介质的更具体的例子可以包括但不限于:具有一个或多个导线的电连接、便携式计算机磁盘、硬盘、随机访问存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、光纤、便携式紧凑磁盘只读存储器(CD-ROM)、光存储器件、磁存储器件、或者上述的任意合适的组合。在本发明中,计算机可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。而在本发明中,计算机可读的信号介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了计算机可读的程序代码。这种传播的数据信号可以采用多种形式,包括但不限于电磁信号、光信号或上述的任意合适的组合。计算机可读的信号介质还可以是计算机可读存储介质以外的任何计算机可读介质,该计算机可读介质可以发送、传播或者传输用于由指令执行系统、装置或者器件使用或者与其结合使用的程序。计算机可读介质上包含的程序代码可以用任何适当的介质传输,包括但不限于:无线、电线、光缆、RF等等,或者上述的任意合适的组合。
附图中的流程图和框图,图示了按照本发明各种实施例的系统、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段、或代码的一部分,上述模块、程序段、或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个接连地表示的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图或流程图中的每个方框、以及框图或流程图中的方框的组合,可以用执行规定的功能或操作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。
描述于本实施例中所涉及到的模块和/或单元可以通过软件的方式实现,也可以通过硬件的方式来实现。所描述的模块和/或单元也可以设置在处理器中,例如,可以描述为:一种处理器包括文本处理模块和缺陷分类模块。其中,这些模块的名称在某种情况下并不构成对该模块本身的限定。
作为另一方面,本发明还提供了一种计算机可读介质,该计算机可读介质可以是上述实施例中描述的设备中所包含的;也可以是单独存在,而未装配入该设备中。上述计算机可读介质承载有一个或者多个程序,当上述一个或者多个程序被一个该设备执行时,使得该设备包括:获取至少一个待测缺陷文本,对每个所述待测缺陷文本分别进行文本处理,获得每个所述待测缺陷文本对应的分词文本;将每个所述待测缺陷文本对应的分词文本输入至文本分类模型,获得每个所述待测缺陷文本对应的缺陷分类结果。
根据本实施例的技术方案,通过文本分类模型对待测缺陷文本进行自动化分类的方式,可提高缺陷分类的工作效率;且通过对待测缺陷文本进行分词处理的方式,可提高缺陷分类的准确率。解决了现有方案中需人工进行手动分类的问题,取到了提高工作效率,提升准确率的有益效果。
上述具体实施方式,并不构成对本发明保护范围的限制。本领域技术人员应该明白的是,取决于设计要求和其他因素,可以发生各种各样的修改、组合、子组合和替代。任何在本发明的精神和原则之内所作的修改、等同替换和改进等,均应包含在本发明保护范围之内。
Claims (10)
1.一种代码缺陷分类方法,其特征在于,包括:
获取至少一个待测缺陷文本,对每个所述待测缺陷文本分别进行文本处理,获得每个所述待测缺陷文本对应的分词文本;
将每个所述待测缺陷文本对应的分词文本输入至文本分类模型,获得每个所述待测缺陷文本对应的缺陷分类结果。
2.根据权利要求1所述的代码缺陷分类方法,其特征在于,所述对每个所述待测缺陷文本分别进行文本处理,获得每个所述待测缺陷文本对应的分词文本,包括:
对每个所述待测缺陷文本进行停用词去除处理,获得每个所述待测缺陷文本对应的第一文本;
对每个所述第一文本进行分词处理,获得每个所述待测缺陷文本对应的分词文本。
3.根据权利要求2所述的代码缺陷分类方法,其特征在于,在获取至少一个待测缺陷文本之前,还包括:
获取至少一个缺陷关键词,对每个所述的缺陷关键词进行文本扩充,获得每个所述缺陷关键词对应的至少一个缺陷扩充语句。
4.根据权利要求3所述的代码缺陷分类方法,其特征在于,所述对每个所述第一文本进行分词处理,获得每个所述待测缺陷文本对应的分词文本,包括:
基于至少一个所述缺陷扩充语句对所述第一文本进行分词处理,获得每个所述待测缺陷文本对应的分词文本。
5.根据权利要求1所述的代码缺陷分类方法,其特征在于,将每个所述待测缺陷文本对应的分词文本输入至文本分类模型,获得每个所述待测缺陷文本对应的缺陷分类结果,包括:
所述文本分类模型对每个分词文本及进行特征提取,获得每个所述分词文本对应的词向量;
对每个所述分词文本对应的词向量进行向量计算,获得每个所述待测缺陷文本对应的缺陷分类结果。
6.根据权利要求5所述的代码缺陷分类方法,其特征在于,所述缺陷分类结果包括至少一个;
所述获得每个所述待测缺陷文本对应的缺陷分类结果,包括:
获得所述待测缺陷文本属于每个所述缺陷分类结果对应的概率。
7.根据权利要求6所述的代码缺陷分类方法,其特征在于,所述方法还包括:
获取每个所述缺陷分类结果对应的概率的概率数值;
将所述概率数值最大的缺陷分类结果作为目标缺陷分类结果。
8.一种代码缺陷分类装置,其特征在于,包括:
文本处理模块,用于获取至少一个待测缺陷文本,对每个所述待测缺陷文本分别进行文本处理,获得每个所述待测缺陷文本对应的分词文本;
缺陷分类模块,用于将每个所述待测缺陷文本对应的分词文本输入至文本分类模型,获得每个所述待测缺陷文本对应的缺陷分类结果。
9.一种电子设备,其特征在于,所述电子设备包括:
至少一个处理器;以及
与所述至少一个处理器通信连接的存储器;其中,
所述存储器存储有可被所述至少一个处理器执行的计算机程序,所述计算机程序被所述至少一个处理器执行,以使所述至少一个处理器能够执行权利要求1-7中任一项所述的代码缺陷分类方法。
10.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,该程序被处理器执行时实现如权利要求1-7任一项所述的代码缺陷分类方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311606398.9A CN117688441A (zh) | 2023-11-28 | 2023-11-28 | 代码缺陷分类方法、装置、电子设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311606398.9A CN117688441A (zh) | 2023-11-28 | 2023-11-28 | 代码缺陷分类方法、装置、电子设备及存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN117688441A true CN117688441A (zh) | 2024-03-12 |
Family
ID=90132922
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202311606398.9A Pending CN117688441A (zh) | 2023-11-28 | 2023-11-28 | 代码缺陷分类方法、装置、电子设备及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN117688441A (zh) |
-
2023
- 2023-11-28 CN CN202311606398.9A patent/CN117688441A/zh active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110580308B (zh) | 信息审核方法及装置、电子设备、存储介质 | |
CN110334209B (zh) | 文本分类方法、装置、介质及电子设备 | |
CN114416511A (zh) | 基于日志的系统异常检测方法、装置、介质及电子设备 | |
CN112419268A (zh) | 一种输电线路图像缺陷检测方法、装置、设备及介质 | |
CN112951233A (zh) | 语音问答方法、装置、电子设备及可读存储介质 | |
CN110457304A (zh) | 数据清洗方法、装置、电子设备及可读存储介质 | |
CN117648931A (zh) | 一种代码审查方法、装置、电子设备及介质 | |
CN111309585A (zh) | 日志数据测试方法及装置、系统、电子设备、存储介质 | |
CN114049895B (zh) | 一种基于asr的语音质检分析方法及系统 | |
CN117851575A (zh) | 一种大语言模型问答优化方法、装置、电子设备及存储介质 | |
CN111240971A (zh) | 风控规则测试用例的生成方法、装置、服务器和存储介质 | |
CN117592470A (zh) | 大语言模型驱动的低成本公报数据抽取方法 | |
CN110968518A (zh) | 自动化测试日志文件的分析方法及装置 | |
CN112749079A (zh) | 软件测试的缺陷分类方法、装置及计算设备 | |
CN116340172A (zh) | 基于测试场景的数据收集方法、装置及测试用例检测方法 | |
CN113778875B (zh) | 一种系统测试缺陷分类方法、装置、设备及存储介质 | |
CN114706856A (zh) | 故障处理方法及装置、电子设备和计算机可读存储介质 | |
CN117688441A (zh) | 代码缺陷分类方法、装置、电子设备及存储介质 | |
CN113110984B (zh) | 报告处理方法、装置、计算机系统及可读存储介质 | |
CN110083807B (zh) | 合同的修改影响自动预测方法、装置、介质及电子设备 | |
CN114417828A (zh) | 一种服务器告警日志描述文本的实体关系抽取方法及系统 | |
CN114564391A (zh) | 确定测试用例的方法、装置、存储介质及电子设备 | |
CN110852077B (zh) | 动态调整Word2Vec模型词典的方法、装置、介质及电子设备 | |
CN108763063B (zh) | 一种无需缺陷标注数据的软件缺陷检测方法 | |
CN113515588A (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 |