CN115344504B - 基于需求规格说明书的软件测试用例自动生成方法及工具 - Google Patents
基于需求规格说明书的软件测试用例自动生成方法及工具 Download PDFInfo
- Publication number
- CN115344504B CN115344504B CN202211276132.8A CN202211276132A CN115344504B CN 115344504 B CN115344504 B CN 115344504B CN 202211276132 A CN202211276132 A CN 202211276132A CN 115344504 B CN115344504 B CN 115344504B
- Authority
- CN
- China
- Prior art keywords
- sub
- word
- text
- test case
- model
- 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.)
- Active
Links
- 238000000034 method Methods 0.000 title claims abstract description 64
- 238000012360 testing method Methods 0.000 claims abstract description 78
- 238000013145 classification model Methods 0.000 claims abstract description 55
- 238000012545 processing Methods 0.000 claims abstract description 20
- 238000002372 labelling Methods 0.000 claims abstract description 19
- 238000013461 design Methods 0.000 claims abstract description 13
- 238000012549 training Methods 0.000 claims description 47
- 230000006870 function Effects 0.000 claims description 35
- 125000004122 cyclic group Chemical group 0.000 claims description 15
- 238000007781 pre-processing Methods 0.000 claims description 13
- 238000013528 artificial neural network Methods 0.000 claims description 10
- 238000013527 convolutional neural network Methods 0.000 claims description 10
- 238000013499 data model Methods 0.000 claims description 7
- 238000004140 cleaning Methods 0.000 claims description 6
- 238000012986 modification Methods 0.000 claims description 6
- 230000004048 modification Effects 0.000 claims description 6
- 238000010606 normalization Methods 0.000 claims description 6
- 230000011218 segmentation Effects 0.000 claims description 6
- 230000007123 defense Effects 0.000 claims description 5
- 238000009434 installation Methods 0.000 claims description 5
- 239000011159 matrix material Substances 0.000 claims description 5
- 238000011176 pooling Methods 0.000 claims description 5
- 230000008439 repair process Effects 0.000 claims description 5
- 238000004590 computer program Methods 0.000 claims description 2
- 238000004891 communication Methods 0.000 description 4
- 238000011156 evaluation Methods 0.000 description 4
- 238000003058 natural language processing Methods 0.000 description 4
- 238000013522 software testing Methods 0.000 description 4
- 238000010586 diagram Methods 0.000 description 3
- 230000008569 process Effects 0.000 description 3
- 238000010276 construction Methods 0.000 description 2
- 230000009286 beneficial effect Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
Images
Classifications
-
- 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/3684—Test management for test design, e.g. generating new test cases
-
- 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/3676—Test management for coverage 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/353—Clustering; Classification into predefined classes
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/20—Natural language analysis
- G06F40/205—Parsing
-
- 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
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Audiology, Speech & Language Pathology (AREA)
- Computational Linguistics (AREA)
- General Health & Medical Sciences (AREA)
- Health & Medical Sciences (AREA)
- Artificial Intelligence (AREA)
- Computer Hardware Design (AREA)
- Quality & Reliability (AREA)
- Data Mining & Analysis (AREA)
- Databases & Information Systems (AREA)
- Debugging And Monitoring (AREA)
Abstract
本发明公开了一种基于需求规格说明书的软件测试用例自动生成方法及工具,该方法包括如下步骤:导入用于生成测试用例的需求规格说明书,对文本数据进行分句处理;使用层次多标签分类模型对测试用例进行标签化处理,从而形成带有标签的功能点列表;对于功能点列表其中的标签为“功能性”的功能点,通过文本识别的方式,提取其中的关键词和特殊数值,再结合测试用例的设计方法自动生成新的测试用例;功能点列表其中标签不是“功能性”的其他功能点,通过标签对比将功能点与公共用例库进行匹配并且使用文本生成的方法,在功能列表的基础上,进行测试用例的自动生成与扩充。本发明利用用例设计方法实现测试用例的自动生成,方便快捷。
Description
技术领域
本发明涉及软件测试技术领域,具体涉及一种基于需求规格说明书的软件测试用例自动生成方法及工具。
背景技术
在软件测试的过程中,测试用例是软件测试过程的核心,是测试执行环节的基本依据,是用来衡量一个项目测试质量的重要指标之一。测试用例的完整性、覆盖程度等都对项目测试质量有影响。
计算机软件是计算机环境之中的核心之一,计算机软件的质量决定了应用系统的好坏。目前我国的软件检测、测评实验室主要依据的标准是GB/T 25000.51-2016《系统与软件工程 系统与软件质量要求和评价(SQuaRE) 第51部分:就绪可用软件产品(RUSP)的质量要求和测试细则》以及GB/T 25000.10-2016《系统与软件工程 系统与软件质量要求和评价(SQuaRE) 第10部分:系统与软件质量模型》。相较以前的标准,该标准将软件质量特性由六大特性调整为八大特性,保持了与ISO/IEC 25010之间的一致性。标准中软件质量属性被划分为八个特性(功能适合性、性能效率、兼容性、易用性、可靠性、安全性、维护性、可移植性),同时八个特性单独具有多个子特性,形成了树状的层级属性关系。
一般大型的软件工程,测试用例能达到几万条测试用例。编写如此数量的测试用例需要极大的时间成本和人力成本。
发明内容
有鉴于此,为了解决现有技术中的上述问题,本发明提出一种基于需求规格说明书的软件测试用例自动生成方法及工具,基于人工智能的国标符合性软件测试用例自动生成系统,能够实现测试用例的自动生成。
本发明通过以下技术手段解决上述问题:
第一方面,本发明提供一种基于需求规格说明书的软件测试用例自动生成方法,包括如下步骤:
建立测试用例的公共用例库;公共用例覆盖软件质量模型的八个特性和其各自的子特性;
将以往的需求规格说明书,其中涉及到测试功能点的语句描述按照八个特性的子特性进行分类,子特性分类为训练任务中的数据标签,八个特性与其子特性存在层级关系,因此标签的格式为层级树状数据模型;标签化任务完成后,形成层次多标签分类模型所用的训练数据集;
建立层次多标签分类模型,利用构建的训练数据集进行模型训练;所述层次多标签分类模型包括四个层次,分别是输入层、嵌入层、编码器层和输出层;
导入用于生成测试用例的需求规格说明书,对文本数据进行分句处理;
使用层次多标签分类模型对测试用例进行标签化处理,从而形成带有标签的功能点列表;
对于功能点列表其中的标签为“功能性”的功能点,通过文本识别的方式,提取其中的关键词和特殊数值,再结合测试用例的设计方法自动生成新的测试用例;功能点列表其中标签不是“功能性”的其他功能点,通过标签对比将功能点与公共用例库进行匹配并且使用文本生成的方法,在功能列表的基础上,进行测试用例的自动生成与扩充。
作为优选地,公共用例分为功能适应性、性能效率、兼容性、易用性、可靠性、信息安全性、维护性和可移植性八个特性;其中,性能效率又分为时间特性、资源利用性和容量子特性;兼容性分为共存性和互操作性子特性;易用性分为可辨识性、易学性、易操作性、用户差错防御性、用户界面舒适性和易访问性子特性;可靠性分为成熟性、可用性、容错性和易恢复性子特性;信息安全性分为保密性、完整性、抗抵赖性、可核查性和真实性子特性;维护性分为模块化、可重用性、易分析性、易修改性和易测试性子特性;可移植性分为适应性、易安装性和易替换性子特性。
作为优选地,形成层次多标签分类模型所用的训练数据集之后,还包括:
对所述训练数据集进行文本预处理,文本预处理的任务包括文本清洗、去除停用词和中文分词。
作为优选地,所述层次多标签分类模型的输入层为训练数据集里面的词元;嵌入层是学习词嵌入模型,学习词嵌入模型将一个词映射为固定维度的稠密型向量,从而构造出矩阵,采用词向量模型获取词汇的词嵌入式表达,将得到的词汇的词嵌入表达结合词汇的上下文内容,进行词汇表达法学习;编码器层包括一个文本编码器,该层次多标签分类模型选择的文本编码器为循环卷积神经网络,循环卷积神经网络使用一个循环结构,卷积神经网络中引用了最大池化层用于自动判断哪些词汇在全文中对于分类任务来说更重要,卷积神经网络训练进行文本表示法学习;输出层结构能决定分类任务的类型,使用归一化函数将输出转化为概率,对于本层次多标签分类任务,层次多标签分类模型使用焦点损失作为损失函数,并且加入递归形式的正则化,通过递归形式的正则化方法,能将标签之间的层次依赖关系合并到参数的正则化结构中。
作为优选地,所述测试用例的设计方法包括等价类划分法和边界值法等。
第二方面,本发明提供一种基于需求规格说明书的软件测试用例自动生成工具,包括:
公共用例库建立模块,用于建立测试用例的公共用例库;公共用例覆盖软件质量模型的八大特性及其子特性;
训练数据集构建模块,用于将以往的需求规格说明书,其中涉及到测试功能点的语句描述按照子特性进行分类,子特性分类为训练任务中的数据标签,八个特性及其子特性存在层级关系,因此标签的格式为层级树状数据模型;标签化任务完成后,形成层次多标签分类模型所用的训练数据集;
分类模型建立模块,用于建立层次多标签分类模型,利用构建的训练数据集进行模型训练;所述层次多标签分类模型包括四个层次,分别是输入层、嵌入层、编码器层和输出层;
需求规格说明书导入模块,用于导入用于生成测试用例的需求规格说明书,对文本数据进行分句处理;
标签化处理模块,用于使用层次多标签分类模型对测试用例进行标签化处理,从而形成带有标签的功能点列表;
测试用例生成模块,用于对于功能点列表其中的标签为“功能性”的功能点,通过文本识别的方式,提取其中的关键词和特殊数值,再结合测试用例的设计方法自动生成新的测试用例;功能点列表其中标签不是“功能性”的其他功能点,通过标签对比将功能点与公共用例库进行匹配并且使用文本生成的方法,在功能列表的基础上,进行测试用例的自动生成与扩充。
作为优选地,公共用例分为功能适应性、性能效率、兼容性、易用性、可靠性、信息安全性、维护性和可移植性八个特性;其中,性能效率又分为时间特性、资源利用性和容量子特性;兼容性分为共存性和互操作性子特性;易用性分为可辨识性、易学性、易操作性、用户差错防御性、用户界面舒适性和易访问性子特性;可靠性分为成熟性、可用性、容错性和易恢复性子特性;信息安全性分为保密性、完整性、抗抵赖性、可核查性和真实性子特性;维护性分为模块化、可重用性、易分析性、易修改性和易测试性子特性;可移植性分为适应性、易安装性和易替换性子特性。
作为优选地,所述基于需求规格说明书的软件测试用例自动生成工具还包括:
文本预处理模块,用于对所述训练数据集进行文本预处理,文本预处理的任务包括文本清洗、去除停用词和中文分词。
作为优选地,所述层次多标签分类模型的输入层为训练数据集里面的词元;嵌入层是学习词嵌入模型,学习词嵌入模型将一个词映射为固定维度的稠密型向量,从而构造出矩阵,采用词向量模型获取词汇的词嵌入式表达,将得到的词汇的词嵌入表达结合词汇的上下文内容,进行词汇表达法学习;编码器层包括一个文本编码器,该层次多标签分类模型选择的文本编码器为循环卷积神经网络,循环卷积神经网络使用一个循环结构,卷积神经网络中引用了最大池化层用于自动判断哪些词汇在全文中对于分类任务来说更重要,卷积神经网络训练进行文本表示法学习;输出层结构能决定分类任务的类型,使用归一化函数将输出转化为概率,对于本层次多标签分类任务,层次多标签分类模型使用焦点损失作为损失函数,并且加入递归形式的正则化,通过递归形式的正则化方法,能将标签之间的层次依赖关系合并到参数的正则化结构中。
第三方面,本发明提供一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现如本发明第一方面所述基于需求规格说明书的软件测试用例自动生成方法的步骤。
与现有技术相比,本发明的有益效果至少包括:
本发明建立自然语言处理相关的层次多标签分类模型,标签是基于国标八大特性及其子特性,并且建立公共用例库,将模型生成的标签化功能点列表结合公共用例库,并且利用用例设计方法实现测试用例的自动生成,方便快捷。
附图说明
为了更清楚地说明本发明实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本发明基于需求规格说明书的软件测试用例自动生成方法的流程图;
图2是本发明层次多标签分类模型搭建流程图;
图3是本发明基于需求规格说明书的软件测试用例自动生成工具的示意图;
图4是本发明电子设备结构框图。
具体实施方式
为使本发明的上述目的、特征和优点能够更加明显易懂,下面将结合附图和具体的实施例对本发明的技术方案进行详细说明。需要指出的是,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例,基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
实施例1
如图1所示,本发明提供基于需求规格说明书的软件测试用例自动生成方法,包括如下步骤:
S1、建立测试用例的公共用例库,该公共用例库主要依据GB/T 25000.10-2016《系统与软件工程 系统与软件质量要求和评价(SQuaRE) 第10部分:系统与软件质量模型》的软件质量特性进行分类。公共用例可大致分为:功能适应性、性能效率、兼容性、易用性、可靠性、信息安全性、维护性、可移植性八个大的测试类型。其中,性能效率又分为时间特性、资源利用性、容量等子特性;兼容性分为共存性、互操作性等子特性;易用性分为可辨识性、易学性、易操作性、用户差错防御性、用户界面舒适性、易访问性等子特性;可靠性分为成熟性、可用性、容错性和易恢复性;信息安全性分为保密性、完整性、抗抵赖性、可核查性、真实性等;维护性分为模块化、可重用性、易分析性、易修改性、易测试性等;可移植性分为适应性、易安装性、易替换性等子特性。公共用例库在保证用例数量的情况下,需要覆盖软件质量模型的所有子特性。
S2、将以往的需求规格说明书,其中涉及到测试功能点的语句描述进行分类,分类的依据按照上述提及的子特性。子特性分类相当于训练任务中的数据标签,因为八个特性和其子特性存在层级关系,因此标签的格式应该为层级树状数据模型。标签化任务完成后,形成层次多标签分类模型所用的训练数据集。对于该训练数据集进行文本预处理,文本预处理的任务包括:文本清洗、去除停用词、中文分词等。
S3、建立层次多标签分类模型,利用构建的训练数据集进行模型训练。本发明采用层次多标签分类模型,该层次多标签分类模型的可分为四个层次,分别是:输入层、嵌入层、编码器层、输出层。所述层次多标签分类模型的输入层为训练数据集里面的词元;嵌入层主要是学习词嵌入模型,学习词嵌入模型可将一个词映射为固定维度的稠密型向量,从而构造出矩阵,采用词向量模型获取词汇的词嵌入式表达,将得到的词汇的词嵌入表达结合词汇的上下文内容,进行词汇表达法学习;编码器层主要包括一个文本编码器,该层次多标签分类模型选择的文本编码器为循环卷积神经网络,循环卷积神经网络使用一个循环结构。卷积神经网络中引用了最大池化层用于自动的判断哪些词汇在全文中对于分类任务来说更重要。输出层结构能决定分类任务的类型,使用归一化函数将输出转化为概率,对于本层次多标签分类任务,层次多标签分类模型使用焦点损失函数作为损失函数,并且加入递归形式的正则化,通过递归形式的正则化方法,能将类标签之间的层次依赖关系合并到参数的正则化结构中,从而鼓励层次结构中邻近的类共享相似的模型参数,它基于这样一种假设:层次结构中相邻的类在语义上彼此接近,因此共享相似的模型参数。递归正则化能使较少的训练实例的类能够汇集信息,能产生更好的分类模型。
S4、导入用于生成测试用例的需求规格说明书,对文本数据进行分句处理。
S5、采用层次多标签分类模型对测试用例进行标签化处理,从而形成带有标签的功能点列表。
S6、对于功能点列表其中的标签为“功能性”的功能点,通过文本识别的方式,提取其中的关键词和特殊数值等条件,再结合一系列测试用例的设计方法:例如等价类划分法、边界值等方法自动生成新的测试用例;功能点列表其中标签不是“功能性”的其他功能点,通过标签对比将功能点与公共用例库进行匹配并且使用文本生成的方法,在功能列表的基础上,进行测试用例的自动生成与扩充。
如图2所示,图2为层次多标签分类模型搭建流程图,其中文本预处理包括对文本书进行文本清理工作、移除停用词、分词等;
学习词嵌入模型的训练,采用词嵌入模型获取词汇的词嵌入式表达;将上一步骤得到的词汇的词嵌入表达结合词汇的上下文内容,进行词汇表达法学习;
卷积神经网络训练进行文本表示法学习,输出层使用归一化函数将输出转化为概率,损失函数选用焦点损失函数。
实施例2
如图3所示,本发明提供一种基于需求规格说明书的软件测试用例自动生成工具,包括公共用例库建立模块、训练数据集构建模块、分类模型建立模块、需求规格说明书导入模块、标签化处理模块和测试用例生成模块;
所述公共用例库建立模块用于建立测试用例的公共用例库;公共用例覆盖软件质量模型的八个特性及其子特性;
所述训练数据集构建模块用于将以往的需求规格说明书,其中涉及到测试功能点的语句描述按照子特性进行分类,子特性分类为训练任务中的数据标签,八大特性及其子特性存在层级关系,因此标签的格式为层级树状数据模型;标签化任务完成后,形成层次多标签分类模型所用的训练数据集;
所述分类模型建立模块用于建立层次多标签分类模型,利用构建的训练数据集进行模型训练;所述层次多标签分类模型包括四个层次,分别是输入层、嵌入层、编码器层和输出层;
所述需求规格说明书导入模块用于导入用于生成测试用例的需求规格说明书,对文本数据进行分句处理;
所述标签化处理模块用于使用层次多标签分类模型对测试用例进行标签化处理,从而形成带有标签的功能点列表;
所述测试用例生成模块用于对于功能点列表其中的标签为“功能性”的功能点,通过文本识别的方式,提取其中的关键词和特殊数值,再结合测试用例的设计方法自动生成新的测试用例;功能点列表其中标签不是“功能性”的其他功能点,通过标签对比将功能点与公共用例库进行匹配并且使用文本生成的方法,在功能列表的基础上,进行测试用例的自动生成与扩充。
本实施例中的其他特征与实施例1相同,故在此不再赘述。
实施例3
基于相同的构思,本发明还提供了一种实体结构示意图,如图4所示,该服务器可以包括:处理器(processor)810、通信接口(Communications Interface)820、存储器(memory)830和通信总线840,其中,处理器810,通信接口820,存储器830通过通信总线840完成相互间的通信。处理器810可以调用存储器830中的逻辑指令,以执行所述基于需求规格说明书的软件测试用例自动生成方法的步骤。例如包括:
S1、建立测试用例的公共用例库;公共用例覆盖软件质量模型的八大特性和其各自的子特性;
S2、将以往的需求规格说明书,其中涉及到测试功能点的语句描述按照子特性进行分类,子特性分类为训练任务中的数据标签,八大特性及其子特性存在层级关系,因此标签的格式为层级树状数据模型;标签化任务完成后,形成层次多标签分类模型所用的训练数据集;
S3、建立层次多标签分类模型,利用构建的训练数据集进行模型训练;所述层次多标签分类模型包括四个层次,分别是输入层、嵌入层、编码器层和输出层;
S4、导入用于生成测试用例的需求规格说明书,对文本数据进行分句处理;
S5、使用层次多标签分类模型对测试用例进行标签化处理,从而形成带有标签的功能点列表;
S6、对于功能点列表其中的标签为“功能性”的功能点,通过文本识别的方式,提取其中的关键词和特殊数值,再结合测试用例的设计方法自动生成新的测试用例;功能点列表其中标签不是“功能性”的其他功能点,通过标签对比将功能点与公共用例库进行匹配并且使用文本生成的方法,在功能列表的基础上,进行测试用例的自动生成与扩充。
此外,上述的存储器830中的逻辑指令可以通过软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。
自然语言处理(NLP)是指用计算机来处理、理解以及运用人类语言,是计算机科学与语言学的交叉学科。本发明建立自然语言处理相关的层次多标签分类模型,标签是基于国标八大特性及其子特性,并且建立公共用例库,将模型生成的标签化功能点列表结合公共用例库,并且利用用例设计方法实现测试用例的自动生成,方便快捷。
以上所述实施例仅表达了本发明的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对本发明专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本发明构思的前提下,还可以做出若干变形和改进,这些都属于本发明的保护范围。因此,本发明专利的保护范围应以所附权利要求为准。
Claims (8)
1.一种基于需求规格说明书的软件测试用例自动生成方法,其特征在于,包括如下步骤:
建立测试用例的公共用例库;公共用例覆盖软件质量模型的八大特性和其各自的子特性;
将以往的需求规格说明书,其中涉及到测试功能点的语句描述按照子特性进行分类,子特性分类为训练任务中的数据标签,八大特性及其子特性存在层级关系,因此标签的格式为层级树状数据模型;标签化任务完成后,形成层次多标签分类模型所用的训练数据集;
建立层次多标签分类模型,利用构建的训练数据集进行模型训练;所述层次多标签分类模型包括四个层次,分别是输入层、嵌入层、编码器层和输出层;
导入用于生成测试用例的需求规格说明书,对文本数据进行分句处理;
使用层次多标签分类模型对测试用例进行标签化处理,从而形成带有标签的功能点列表;
对于功能点列表其中的标签为“功能性”的功能点,通过文本识别的方式,提取其中的关键词和特殊数值,再结合测试用例的设计方法自动生成新的测试用例;功能点列表其中标签不是“功能性”的其他功能点,通过标签对比将功能点与公共用例库进行匹配并且使用文本生成的方法,在功能列表的基础上,进行测试用例的自动生成与扩充;
所述层次多标签分类模型的输入层为训练数据集里面的词元;嵌入层是学习词嵌入模型,学习词嵌入模型将一个词映射为固定维度的稠密型向量,从而构造出矩阵,采用词向量模型获取词汇的词嵌入式表达,将得到的词汇的词嵌入表达结合词汇的上下文内容,进行词汇表达法学习;编码器层包括一个文本编码器,该层次多标签分类模型选择的文本编码器为循环卷积神经网络,循环卷积神经网络使用一个循环结构,卷积神经网络中引用了最大池化层用于自动判断哪些词汇在全文中对于分类任务来说更重要,卷积神经网络训练进行文本表示法学习;输出层结构能决定分类任务的类型,使用归一化函数将输出转化为概率,对于本层次多标签分类任务,层次多标签分类模型使用焦点损失作为损失函数,并且加入递归形式的正则化,通过递归形式的正则化方法,能将类标签之间的层次依赖关系合并到参数的正则化结构中。
2.根据权利要求1所述的基于需求规格说明书的软件测试用例自动生成方法,其特征在于,公共用例分为功能适应性、性能效率、兼容性、易用性、可靠性、信息安全性、维护性和可移植性八大特性;其中,性能效率又分为时间特性、资源利用性和容量子特性;兼容性分为共存性和互操作性子特性;易用性分为可辨识性、易学性、易操作性、用户差错防御性、用户界面舒适性和易访问性子特性;可靠性分为成熟性、可用性、容错性和易恢复性子特性;信息安全性分为保密性、完整性、抗抵赖性、可核查性和真实性子特性;维护性分为模块化、可重用性、易分析性、易修改性和易测试性子特性;可移植性分为适应性、易安装性和易替换性子特性。
3.根据权利要求1所述的基于需求规格说明书的软件测试用例自动生成方法,其特征在于,形成层次多标签分类模型所用的训练数据集之后,还包括:
对所述训练数据集进行文本预处理,文本预处理的任务包括文本清洗、去除停用词和中文分词。
4.根据权利要求1所述的基于需求规格说明书的软件测试用例自动生成方法,其特征在于,所述测试用例的设计方法包括价类划分法和边界值方法。
5.一种基于需求规格说明书的软件测试用例自动生成工具,其特征在于,包括:
公共用例库建立模块,用于建立测试用例的公共用例库;公共用例覆盖软件质量模型的八大特性及其子特性;
训练数据集构建模块,用于将以往的需求规格说明书,其中涉及到测试功能点的语句描述按照子特性进行分类,子特性分类为训练任务中的数据标签,八大特性及其子特性存在层级关系,因此标签的格式为层级树状数据模型;标签化任务完成后,形成层次多标签分类模型所用的训练数据集;
分类模型建立模块,用于建立层次多标签分类模型,利用构建的训练数据集进行模型训练;所述层次多标签分类模型包括四个层次,分别是输入层、嵌入层、编码器层和输出层;
需求规格说明书导入模块,用于导入用于生成测试用例的需求规格说明书,对文本数据进行分句处理;
标签化处理模块,用于使用层次多标签分类模型对测试用例进行标签化处理,从而形成带有标签的功能点列表;
测试用例生成模块,用于对于功能点列表其中的标签为“功能性”的功能点,通过文本识别的方式,提取其中的关键词和特殊数值,再结合测试用例的设计方法自动生成新的测试用例;功能点列表其中标签不是“功能性”的其他功能点,通过标签对比将功能点与公共用例库进行匹配并且使用文本生成的方法,在功能列表的基础上,进行测试用例的自动生成与扩充;
所述层次多标签分类模型的输入层为训练数据集里面的词元;嵌入层是学习词嵌入模型,学习词嵌入模型将一个词映射为固定维度的稠密型向量,从而构造出矩阵,采用词向量模型获取词汇的词嵌入式表达,将得到的词汇的词嵌入表达结合词汇的上下文内容,进行词汇表达法学习;编码器层包括一个文本编码器,该层次多标签分类模型选择的文本编码器为循环卷积神经网络,循环卷积神经网络使用一个循环结构,卷积神经网络中引用了最大池化层用于自动判断哪些词汇在全文中对于分类任务来说更重要,卷积神经网络训练进行文本表示法学习;输出层结构能决定分类任务的类型,使用归一化函数将输出转化为概率,对于本层次多标签分类任务,层次多标签分类模型使用焦点损失作为损失函数,并且加入递归形式的正则化,通过递归形式的正则化方法,能将类标签之间的层次依赖关系合并到参数的正则化结构中。
6.根据权利要求5所述的基于需求规格说明书的软件测试用例自动生成工具,其特征在于,公共用例分为功能适应性、性能效率、兼容性、易用性、可靠性、信息安全性、维护性和可移植性八大特性;其中,性能效率又分为时间特性、资源利用性和容量子特性;兼容性分为共存性和互操作性子特性;易用性分为可辨识性、易学性、易操作性、用户差错防御性、用户界面舒适性和易访问性子特性;可靠性分为成熟性、可用性、容错性和易恢复性子特性;信息安全性分为保密性、完整性、抗抵赖性、可核查性和真实性子特性;维护性分为模块化、可重用性、易分析性、易修改性和易测试性子特性;可移植性分为适应性、易安装性和易替换性子特性。
7.根据权利要求5所述的基于需求规格说明书的软件测试用例自动生成工具,其特征在于,所述基于需求规格说明书的软件测试用例自动生成工具还包括:
文本预处理模块,用于对所述训练数据集进行文本预处理,文本预处理的任务包括文本清洗、去除停用词和中文分词。
8.一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现如权利要求1-4任一所述的基于需求规格说明书的软件测试用例自动生成方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211276132.8A CN115344504B (zh) | 2022-10-19 | 2022-10-19 | 基于需求规格说明书的软件测试用例自动生成方法及工具 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211276132.8A CN115344504B (zh) | 2022-10-19 | 2022-10-19 | 基于需求规格说明书的软件测试用例自动生成方法及工具 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN115344504A CN115344504A (zh) | 2022-11-15 |
CN115344504B true CN115344504B (zh) | 2023-03-24 |
Family
ID=83957201
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202211276132.8A Active CN115344504B (zh) | 2022-10-19 | 2022-10-19 | 基于需求规格说明书的软件测试用例自动生成方法及工具 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN115344504B (zh) |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP4439273A1 (en) * | 2023-03-31 | 2024-10-02 | Rockwell Collins, Inc. | Language models for automatic microbenchmark generation |
CN116578499B (zh) * | 2023-07-13 | 2023-09-22 | 建信金融科技有限责任公司 | 公共组件功能变更影响的智能化分析测试方法及其系统 |
CN117707922A (zh) * | 2023-10-20 | 2024-03-15 | 九科信息技术(深圳)有限公司 | 测试用例的生成方法、装置、终端设备和可读存储介质 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113297379A (zh) * | 2021-05-25 | 2021-08-24 | 善诊(上海)信息技术有限公司 | 一种文本数据多标签分类方法及装置 |
CN114169330A (zh) * | 2021-11-24 | 2022-03-11 | 匀熵教育科技(无锡)有限公司 | 融合时序卷积与Transformer编码器的中文命名实体识别方法 |
CN114912433A (zh) * | 2022-05-25 | 2022-08-16 | 亚信科技(中国)有限公司 | 文本层级多标签分类方法、装置、电子设备以及存储介质 |
Family Cites Families (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20170192882A1 (en) * | 2016-01-06 | 2017-07-06 | Hcl Technologies Limited | Method and system for automatically generating a plurality of test cases for an it enabled application |
CN108694119A (zh) * | 2017-04-11 | 2018-10-23 | 深圳市美好创亿医疗科技有限公司 | 软件测试用例的构建方法 |
CN112416778B (zh) * | 2020-11-24 | 2024-09-03 | 北京金山云网络技术有限公司 | 测试用例推荐方法、装置和电子设备 |
CN113282498B (zh) * | 2021-05-31 | 2024-04-05 | 深圳赛安特技术服务有限公司 | 测试用例的生成方法、装置、设备及存储介质 |
CN114328230A (zh) * | 2021-12-29 | 2022-04-12 | 以萨技术股份有限公司 | 测试用例生成的方法、电子设备和计算机可读存储介质 |
CN114691491A (zh) * | 2022-02-23 | 2022-07-01 | 浪潮金融信息技术有限公司 | 一种用于智慧屏的用例模板生成方法、系统及介质 |
CN114595158A (zh) * | 2022-03-21 | 2022-06-07 | 平安证券股份有限公司 | 基于人工智能的测试用例生成方法、装置、设备及介质 |
CN114706559A (zh) * | 2022-03-29 | 2022-07-05 | 山东省计算中心(国家超级计算济南中心) | 一种基于需求识别的软件规模度量方法 |
CN114691525A (zh) * | 2022-04-26 | 2022-07-01 | 上海幻电信息科技有限公司 | 测试用例的选择方法及装置 |
-
2022
- 2022-10-19 CN CN202211276132.8A patent/CN115344504B/zh active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113297379A (zh) * | 2021-05-25 | 2021-08-24 | 善诊(上海)信息技术有限公司 | 一种文本数据多标签分类方法及装置 |
CN114169330A (zh) * | 2021-11-24 | 2022-03-11 | 匀熵教育科技(无锡)有限公司 | 融合时序卷积与Transformer编码器的中文命名实体识别方法 |
CN114912433A (zh) * | 2022-05-25 | 2022-08-16 | 亚信科技(中国)有限公司 | 文本层级多标签分类方法、装置、电子设备以及存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CN115344504A (zh) | 2022-11-15 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN115344504B (zh) | 基于需求规格说明书的软件测试用例自动生成方法及工具 | |
CN109657230A (zh) | 融合词向量和词性向量的命名实体识别方法及装置 | |
JP2018190188A (ja) | 要約生成装置、要約生成方法及びコンピュータプログラム | |
CN112711953A (zh) | 一种基于注意力机制和gcn的文本多标签分类方法和系统 | |
CN111241389B (zh) | 一种基于矩阵的敏感词过滤方法、装置、电子设备、存储介质 | |
CN109948710B (zh) | 基于api相似度的微服务识别方法 | |
CN111124487B (zh) | 代码克隆检测方法、装置以及电子设备 | |
CN116501898B (zh) | 适用于少样本和有偏数据的金融文本事件抽取方法和装置 | |
CN113947161A (zh) | 一种基于注意力机制的多标签文本分类方法及系统 | |
CN112420145A (zh) | 电子病历文书数据处理方法、装置及计算机可读存储介质 | |
CN114691525A (zh) | 测试用例的选择方法及装置 | |
CN111680506A (zh) | 数据库表的外键映射方法、装置、电子设备和存储介质 | |
CN113704420A (zh) | 文本中的角色识别方法、装置、电子设备及存储介质 | |
CN116975634A (zh) | 一种基于程序静态属性及图神经网络的微服务提取方法 | |
CN113177118A (zh) | 文本分类模型、文本分类的方法以及装置 | |
CN117313683A (zh) | 元数据处理方法、装置、服务器及存储介质 | |
CN109902162B (zh) | 基于数字指纹的文本相似性的识别方法、存储介质及装置 | |
CN113724055B (zh) | 一种商品属性挖掘方法及装置 | |
CN111046934B (zh) | 一种swift报文软条款识别方法及装置 | |
CN115238645A (zh) | 资产数据识别方法、装置、电子设备和计算机存储介质 | |
CN114201957A (zh) | 文本情感分析方法、装置及计算机可读存储介质 | |
CN113779248A (zh) | 数据分类模型训练方法、数据处理方法及存储介质 | |
Becks et al. | Automatically structuring textual requirement scenarios | |
CN113505889B (zh) | 图谱化知识库的处理方法、装置、计算机设备和存储介质 | |
US20240346247A1 (en) | Artificial intelligence based log mask prediction for communications system testing |
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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |