CN112699052A - 一种基于相关输入变量的软件测试用例进化生成方法 - Google Patents

一种基于相关输入变量的软件测试用例进化生成方法 Download PDF

Info

Publication number
CN112699052A
CN112699052A CN202110051669.3A CN202110051669A CN112699052A CN 112699052 A CN112699052 A CN 112699052A CN 202110051669 A CN202110051669 A CN 202110051669A CN 112699052 A CN112699052 A CN 112699052A
Authority
CN
China
Prior art keywords
variant
test case
input
program
input variables
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.)
Granted
Application number
CN202110051669.3A
Other languages
English (en)
Other versions
CN112699052B (zh
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.)
Xuzhou University of Technology
Original Assignee
Xuzhou University of Technology
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 Xuzhou University of Technology filed Critical Xuzhou University of Technology
Publication of CN112699052A publication Critical patent/CN112699052A/zh
Application granted granted Critical
Publication of CN112699052B publication Critical patent/CN112699052B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/36Preventing errors by testing or debugging software
    • G06F11/3668Software testing
    • G06F11/3672Test management
    • G06F11/3684Test management for test design, e.g. generating new test cases
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/12Computing arrangements based on biological models using genetic models
    • G06N3/126Evolutionary algorithms, e.g. genetic algorithms or genetic programming

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Health & Medical Sciences (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Biophysics (AREA)
  • Bioinformatics & Cheminformatics (AREA)
  • Bioinformatics & Computational Biology (AREA)
  • Evolutionary Biology (AREA)
  • General Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Evolutionary Computation (AREA)
  • Mathematical Physics (AREA)
  • Data Mining & Analysis (AREA)
  • Biomedical Technology (AREA)
  • General Health & Medical Sciences (AREA)
  • Molecular Biology (AREA)
  • Computing Systems (AREA)
  • Artificial Intelligence (AREA)
  • Genetics & Genomics (AREA)
  • Computational Linguistics (AREA)
  • Software Systems (AREA)
  • Physiology (AREA)
  • Computer Hardware Design (AREA)
  • Quality & Reliability (AREA)
  • Debugging And Monitoring (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)

Abstract

本发明公布了一种基于相关输入变量的软件测试用例进化生成方法,目的采用静态确定输入变量与变异分支相关性,缩减搜索域的范围,采用遗传算法高效生成具有缺陷检测能力的测试用例;该方法首先将确定变异体与输入变量的相关性,转化为可达变异分支的路径与输入变量的相关性,采用静态分析确定变异分支与输入变量的相关性;然后,建立变异测试用例生成数学模型,决策变量为相关输入变量;最后,利用遗传算法求解该模型,进化生成测试用例。

Description

一种基于相关输入变量的软件测试用例进化生成方法
技术领域
本发明涉及计算机软件测试领域,具体是一种基于相关输入变量的软件测试用例进化生成方法。
背景技术
软件测试是识别和删除缺陷,并进行验证符合要求和规范的过程,此外硬件和软件的发展技术增加了软件产品的复杂性。为此,研究人员使用各种方法和技术来应对进步提供高质量的产品。最常见的测试方法是手动测试,既费力又费时;另一种方法是自动化测试处理现代软件的复杂性。
软件测试中重要的一个是测试用例的使用。为了量化测试用例的“质量”,研究人员使用所谓的充分性度量或测试标准,其中变异测试是一种度量测试集充分性的有效方法。它建立的测试准则,用一些测试数据区分被测程序和被改变的程序版本,被改变的程序版本称为变异体。变异体代表植入的程序缺陷。测试用例执行这些变异体和原程序,如果输出是不正确的,那么变异体就会被杀死,否则定义为它们是活着的。测试中任何测试用例的最终目的都是寻找对应的缺陷。
对一个被测程序的不同语句,实施变异操作,会产生数目庞大的变异体,为了杀死这些变异体,也需要大量的测试用例,然而获得这些测试用例很难,尤其对于难杀死变异体。为了克服上述缺陷,Papadakis等人在2011年《Software Quality Journal》第19期发表的文章“Automatically performing weak mutation with the aid of symbolicexecution,concolic testing and search-based testing”一文提出一种新的软件测试方法。他们基于弱变异测试准则杀死变异体的问题,转化为变异条件语句真分支的覆盖问题。为此,对于变异前后的语句和,基于弱变异测试的必要条件,构建变异条件语句“”,其真分支为一个标志语句,简称变异分支;然后,把这些变异分支插入到原程序的变异前的语句前面,这样便形成了新的被测程序。那么,能够覆盖新程序变异分支的测试用例,一定能够基于弱变异测试准则,杀死该变异分支对应的变异体。这样做的好处是,能够利用已有的传统结构测试的测试用例生成方法,生成变异测试用例。
研究表明有些变异分支是否被杀死,只与个别输入变量相关。如果能够移除那些与变异分支相关的输入变量,只要在相关输入变量所形成域内,寻找杀死它们测试用例,将能大大提高测试用例生成的效率。
当生成变异测试用例时,有许多不同的基于搜索的优化算法可供选择,最常用的是遗传算法。遗传算法是一种通过模拟自然进化过程全局搜索最优解的方法。它通过生成进化种群,实施编码,选择、交叉、变异等遗传操作,引导种群在搜索域中寻找最优解。如果能够基于相关输入变量,缩减搜索域,将能大大提高找到最优解的速度。
发明内容
为了解决现有技术中软件测试生成测试用例效率低下的问题,本发明提供了一种基于相关输入变量的软件测试用例进化生成方法,该方法首先将确定变异体与输入变量的相关性,转化为可达变异分支的路径与输入变量的相关性,采用静态分析确定变异分支与输入变量的相关性;然后,建立变异测试用例生成数学模型,决策变量为相关输入变量;最后,利用遗传算法求解该模型,进化生成测试用例。
本发明采用的技术方案:一种基于相关输入变量的软件测试用例进化生成方法,设被测程序为G,对其包含的语句实施变异,得到变异分支集合为M={M1,M2,…,Mn},n是变异分支的个数;将这些变异分支插入到G中,得到新的被测程序G';设程序的输入向量为X=(x1,x2,…,xm),m是程序输入变量的个数;输入域D(X)是每个输入变量域的叉乘,即D(X)=D(x1)×D(x2)×…×D(xm);其特征在于:该方法包括以下步骤:
S1:基于静态分析确定输入变量与变异分支的相关性;
S1.1:确定变异分支与输入变量的相关性;
S2:构建基于相关输入变量的变异测试用例生成优化模型;
S3:基于遗传算法生成变异测试用例。
优选的,步骤S1.1中基于静态分析确定输入变量与变异分支的相关性的方法为:
Figure BDA0002897138990000021
D*(xj)是D(xj)的子域,如果某一个输入变量xj在D*(xj)取不同的值,能够影响Mi是否被杀死,那么,定义xj在D*(xj)与Mi相关;否则定义xj在D*(xj)与Mi不相关;具体为:
选择所有路径中最容易覆盖的路径,作为目标路径Pi,然后在D*(xj)内,分析xj与Pi的相关性;如果Pi上每个节点语句都与xj不相关,那么判定Mi与xj不相关;如果Pi上只要有一个节点语句与xj相关,那么判定Mi与xj相关。
优选的,步骤S2中构建基于相关输入变量的变异测试用例生成优化模型的方法为:
对于Mi,设与它相关的输入变量为
Figure BDA0002897138990000031
那么决策向量记为
Figure BDA0002897138990000032
对于Mi,基于相关输入变量的变异测试用例生成模型表示为:
Figure BDA0002897138990000033
Figure BDA0002897138990000034
其中
Figure BDA0002897138990000035
Figure BDA0002897138990000036
所形成的取值域,
Figure BDA0002897138990000037
为目标函数,当
Figure BDA0002897138990000038
杀死Mi
Figure BDA0002897138990000039
Figure BDA00028971389900000310
没有杀死Mi
Figure BDA00028971389900000311
Mi被杀死当且仅当
Figure BDA00028971389900000312
取最小值0;这个目标函数很难指导种群的进化,所以需要定义约束函数
Figure BDA00028971389900000313
设从程序开始到Mi
Figure BDA00028971389900000314
穿越的路径为
Figure BDA00028971389900000315
与Pi的相似度记为
Figure BDA00028971389900000316
表示为
Figure BDA00028971389900000317
其中,|Pi|为从程序开始到Mi路径Pi上节点的个数;
Figure BDA00028971389900000318
为从程序开始,Pi
Figure BDA00028971389900000319
上相同节点的个数。
优选的,步骤S3中基于遗传算法生成变异测试用例的方法为:
对于Mi,当采用遗传算法生成测试用例时,对进化个体实施编码,交叉和变异操作,只需在相关的变量
Figure BDA00028971389900000320
部分;对于不相关的程序输入,在其输入域内,随机的取一个固定值,在整个进化过程中保持不变;
在种群整个进化过程中,适应值函数是用于驱动测试用例生成;基于目标函数
Figure BDA0002897138990000041
和约束函数
Figure BDA0002897138990000042
Mi的适应值函数为
Figure BDA0002897138990000043
表示为:
Figure BDA0002897138990000044
其中,d是一个常数,它的作用确保括号中的值大于0;当且仅当
Figure BDA0002897138990000045
能杀死Mi
采用遗传算法生成变异测试用例的算法为:
输入:Mi
输出:测试用例;
Step1:初始化子种群和遗传参数;
Step2:种群中每个进化个体在执行Mi
Step3:判断终止条件是否满足,如果没有满足,转Step4;如果满足,转Step6;
Step4:计算进化个体适应值
Figure BDA0002897138990000046
执行选择、交叉、变异遗传操作,生成新的进化个体,转Step2;
Step5:保存被杀死的变异体和测试用例;转Step6;
Step6:输出测试用例;
每一个种群的进化个体编码根据它对应的决策变量确定,Step3中终止条件有两个,一个是生成杀死变异体的测试用例;另一个是种群进化到最大迭代次数。
本发明的有益效果:
(1)本发明将输入变量与变异分支的相关性,转化为输入变量与可达变异分支的最容易覆盖的一条路径的相关性,采用静态分析方法。这样一来,即保证了相关性分析的准确性,又降低了静态分析相关性的代价。
(2)本发明建立基于相关输入变量的变异测试用例生成优化模型,本模型与传统变异测试用例生成的优化模型的不同在于,该模型的决策变量只是相关输入变量。当决策变量个数小于程序输入分量个数时,相当于搜索域被缩减。这样,有利于提高找到测试用例的效率。
(3)遗传算法是一种基于搜索的全局搜索技术,在缩减后的搜索域内采用遗传算法,对进化个体实施编码,交叉和变异操作,只需在相关的变量部分,这样,有利于减少进化个体执行的代价。
附图说明
图1为本发明提出的一种基于相关输入变量的软件测试用例进化生成方法总流程图;
图2为本发明实施例中的示例程序。
具体实施方式
如图1所示,为本发明提出的一种基于相关输入变量的软件测试用例进化生成方法总流程图。该方法包括:
步骤S1:基于静态分析确定输入变量与变异分支的相关性
1.1确定变异分支与输入变量的相关性
设被测程序为G,对其包含的语句实施变异,得到变异分支集合为M={M1,M2,…,Mn},n是变异分支的个数。将这些变异分支插入到G中,得到新的被测程序G'。设程序的输入向量为X=(x1,x2,…,xm),m是程序输入变量的个数。输入域D(X)是每个输入变量域的叉乘,即D(X)=D(x1)×D(x2)×…×D(xm)。
Figure BDA0002897138990000051
D*(xj)是D(xj)的子域,如果某一个输入变量xj在D*(xj)取不同的值,能够影响Mi是否被杀死,那么,定义xj在D*(xj)与Mi相关;否则定义xj在D*(xj)与Mi不相关。
本发明采用静态分析方法确定输入变量与变异体相关性。一般情况,从程序的开始到Mi可能不止一条,这些路径上涉及的变量一般与Mi相关。然而,如果对每一条路径上的变量,判断它们与Mi的相关性,代价太大了。因此,可以选择所有路径中最容易覆盖的路径,作为目标路径,Pi,然后在D*(xj)内,分析xj与Pi的相关性。如果Pi上每个节点语句都与xj不无关,那么可以判定Mi与xj无关。如果Pi上任意一个节点语句与xj有关,那么可以判定Mi与xj相关。
步骤S2:构建基于相关输入变量的变异测试用例生成优化模型
对于Mi,设与它相关的输入变量为
Figure BDA0002897138990000052
那么决策向量记为
Figure BDA0002897138990000061
对于Mi,基于相关输入变量的变异测试用例生成模型可以表示为:
Figure BDA0002897138990000062
其中
Figure BDA0002897138990000063
Figure BDA0002897138990000064
所形成的取值域,
Figure BDA0002897138990000065
为目标函数,当
Figure BDA0002897138990000066
杀死Mi
Figure BDA0002897138990000067
Figure BDA0002897138990000068
没有杀死Mi
Figure BDA0002897138990000069
Mi被杀死当且仅当
Figure BDA00028971389900000610
取最小值0。这个目标函数很难指导种群的进化,所以需要定义约束函数
Figure BDA00028971389900000611
设从程序开始到Mi
Figure BDA00028971389900000612
穿越的路径为
Figure BDA00028971389900000613
与Pi的相似度记为
Figure BDA00028971389900000614
可以表示为
Figure BDA00028971389900000615
其中,|Pi|为从程序开始到Mi路径Pi上节点的个数;
Figure BDA00028971389900000616
为从程序开始,Pi
Figure BDA00028971389900000617
上相同节点的个数。
步骤S3:基于遗传算法生成变异测试用例
为了求解基于相关输入变量的变异测试用例生成模型,对于Mi,当采用遗传算法生成测试用例时,对进化个体实施编码,交叉和变异操作,只需在相关的变量
Figure BDA00028971389900000618
部分。对于不相关的程序输入,在其输入域内,随机的取一个固定值,在整个进化过程中保持不变。
在种群整个进化过程中,适应值函数是用于驱动测试用例生成。基于目标函数
Figure BDA00028971389900000619
和约束函数
Figure BDA00028971389900000620
Mi的适应值函数为
Figure BDA00028971389900000621
可以表示为:
Figure BDA00028971389900000622
其中,d是一个很小的常数,它的作用确保括号中的值大于0。当且仅当
Figure BDA00028971389900000623
能杀死Mi
算法1阐述了采用遗传算法生成变异测试用例的方法:
输入:Mi
输出:测试用例;
Step1:初始化子种群和遗传参数;
Step2:种群中每个进化个体在执行Mi
Step3:判断终止条件是否满足,如果没有满足,转Step4;如果满足,转Step6;
Step4:计算进化个体适应值
Figure BDA0002897138990000071
执行选择、交叉、变异遗传操作,生成新的进化个体,转Step2;
Step5:保存被杀死的变异体和测试用例;转Step6;
Step6:输出测试用例。
每一个种群的进化个体编码根据它对应的决策变量确定;算法1中Step3中终止条件有两个,一个是生成杀死变异体的测试用例;另一个是种群进化到最大迭代次数。
下面通过示例程序说明本发明的实施过程。
图2为示例程序源代码。输入向量为X={x[1],x[2],x[3],x[4],x[5],x[6]},它们为整数,取值域为D(X)=[1,64]6。由图2(b)可知,有两条路径可达M1,它们分别为“1,2,3,5”和“1,2,4,5”。因为语句4(“f(x[3]==x[4])”的真分支)有很高的执行概率,表明“1,2,4,5”比较容易覆盖,因此选择“1,2,4,5”作为目标路径,记为P1
下面基于P1,分别考察x[1],x[2],x[3],x[4],x[5]和x[6]是否与M1相关。
对于x[1],它们仅仅存在于语句1(if(x[1]<20&&x[1]+x[2]<50))。考虑到某一测试用例X若期望杀死M1,X首先能覆盖P1。因为“x[1]<20”和“x[1]∈[1,64]”,可以得到D*(x[1])=[1,19],也就是说x[1]在D*(x[1])=[1,19],取任意值,都不会影响X杀死M1的情况。对于x[2],因为D*(x[1])=[1,19]和x[1]+x[2]<50,通过区间运算,可以得到D*(x[2])=[1,30],也就是说x[2]在D*(x[2])=[1,30],取任意值,都不会影响X杀死M1的情况。
对于x[3],x[4],x[6],可以确定它们分别在D(x3),D(x4),D(x6)内,能够影响P1上的节点,因此,它们与M1相关。
对于x[5],它存在于语句4中“x[5]=x[5]%3”,而语句4是个非控制节点,x[5]不会影响其他节点的值。因此,x[5]在D(x5)与M1不相关。
考虑到x[3],x[4],x[6]与M1相关,所以选择x[3],x[4],x[6]作为决策变量
Figure BDA0002897138990000084
建立杀死M1变异测试用例生成模型为:
Figure BDA0002897138990000081
Figure BDA0002897138990000082
Figure BDA0002897138990000083
约束函数中覆盖的路径为“1,2,4,5”。
基于算法1,采用多种群遗传算法生成测试用例时,进化个体编码,交叉和变异只需要在x[3],x[4],x[6]部分。
当执行被测程序时,需要6个输入变量,为此,x[1]在
Figure BDA0002897138990000085
x[2]在
Figure BDA0002897138990000086
和x[5]在D5(x[5])=[1,64]内,分别取任意值,而且这些值整个进化过程中保持不变。在实验中,进化个体中一个变量编码设置为6位,在传统数学模型中,决策变量是全部输入变量,因此在每一次进化中,将有26×6个候选解,而采用本发明的数学模型中,决策变量的个数为3,在每一次进化中将有23×6个候选解。由此可见,基于本发明的模型,候选解从6维降低到了3维,候选解的数目也大大减少。
在遗传算法中,设置种群规模为5,进化最大代数设为3000,采用轮盘赌选择,单点交叉和单点变异。交叉概率和变异概率分别为0.9和0.3。最后基于算法1,得到杀死变异分支的测试用例为14,16,13,21,30,21。

Claims (4)

1.一种基于相关输入变量的软件测试用例进化生成方法,设被测程序为G,对其包含的语句实施变异,得到变异分支集合为M={M1,M2,…,Mn},n是变异分支的个数;将这些变异分支插入到G中,得到新的被测程序G';设程序的输入向量为X=(x1,x2,…,xm),m是程序输入变量的个数;输入域D(X)是每个输入变量域的叉乘,即D(X)=D(x1)×D(x2)×…×D(xm);其特征在于:该方法包括以下步骤:
S1:基于静态分析确定输入变量与变异分支的相关性;
S1.1:确定变异分支与输入变量的相关性;
S2:构建基于相关输入变量的变异测试用例生成优化模型;
S3:基于遗传算法生成变异测试用例。
2.根据权利要求1所述的一种基于相关输入变量的软件测试用例进化生成方法,其特征在于:步骤S1.1中基于静态分析确定输入变量与变异分支的相关性的方法为:
Figure FDA0002897138980000011
D*(xj)是D(xj)的子域,如果某一个输入变量xj在D*(xj)取不同的值,能够影响Mi是否被杀死,那么,定义xj在D*(xj)与Mi相关;否则定义xj在D*(xj)与Mi不相关;判断方法具体为:
选择所有路径中最容易覆盖的路径,作为目标路径Pi,然后在D*(xj)内,分析xj与Pi的相关性;如果Pi上每个节点语句都与xj不相关,那么判定Mi与xj不相关;如果Pi上只要有一个节点语句与xj相关,那么判定Mi与xj相关。
3.根据权利要求2所述的一种基于相关输入变量的软件测试用例进化生成方法,其特征在于:步骤S2中构建基于相关输入变量的变异测试用例生成优化模型的方法为:
对于Mi,设与它相关的输入变量为
Figure FDA0002897138980000012
那么决策向量记为
Figure FDA0002897138980000013
对于Mi,基于相关输入变量的变异测试用例生成模型表示为:
Figure FDA0002897138980000021
Figure FDA0002897138980000022
其中
Figure FDA0002897138980000023
Figure FDA0002897138980000024
所形成的取值域,
Figure FDA0002897138980000025
为目标函数,当
Figure FDA0002897138980000026
杀死Mi
Figure FDA0002897138980000027
Figure FDA0002897138980000028
没有杀死Mi
Figure FDA0002897138980000029
Mi被杀死当且仅当
Figure FDA00028971389800000210
取最小值0;这个目标函数很难指导种群的进化,所以需要定义约束函数
Figure FDA00028971389800000211
设从程序开始到Mi
Figure FDA00028971389800000212
穿越的路径为
Figure FDA00028971389800000213
Figure FDA00028971389800000214
与Pi的相似度记为
Figure FDA00028971389800000215
表示为
Figure FDA00028971389800000216
其中,|Pi|为从程序开始到Mi路径Pi上节点的个数;
Figure FDA00028971389800000217
为从程序开始,Pi
Figure FDA00028971389800000218
上相同节点的个数。
4.根据权利要求3所述的一种基于相关输入变量的软件测试用例进化生成方法,其特征在于:步骤S3中基于遗传算法生成变异测试用例的方法为:
对于Mi,当采用遗传算法生成测试用例时,对进化个体实施编码,交叉和变异操作,只需在相关的变量
Figure FDA00028971389800000219
部分;对于不相关的程序输入,在其输入域内,随机的取一个值,在整个进化过程中保持不变;
在种群整个进化过程中,适应值函数是用于驱动测试用例生成;基于目标函数
Figure FDA00028971389800000220
和约束函数
Figure FDA00028971389800000221
Mi的适应值函数为
Figure FDA00028971389800000222
表示为:
Figure FDA00028971389800000223
其中,d是一个常数,它的作用确保括号中的值大于0;当且仅当
Figure FDA00028971389800000224
Figure FDA00028971389800000225
能杀死Mi
采用遗传算法生成变异测试用例的算法为:
输入:Mi
输出:测试用例;
Step1:初始化子种群和遗传参数;
Step2:种群中每个进化个体在执行Mi
Step3:判断终止条件是否满足,如果没有满足,转Step4;如果满足,转Step6;
Step4:计算进化个体适应值
Figure FDA0002897138980000031
执行选择、交叉、变异遗传操作,生成新的进化个体,转Step2;
Step5:保存被杀死的变异体和测试用例;转Step6;
Step6:输出测试用例;
每一个种群的进化个体编码根据它对应的决策变量确定,Step3中终止条件有两个,一个是生成杀死变异体的测试用例;另一个是种群进化到最大迭代次数。
CN202110051669.3A 2020-08-03 2021-01-14 一种基于相关输入变量的软件测试用例进化生成方法 Active CN112699052B (zh)

Applications Claiming Priority (8)

Application Number Priority Date Filing Date Title
CN202010770405 2020-08-03
CN2020107704059 2020-08-03
CN202011072402 2020-10-09
CN2020110728345 2020-10-09
CN202011072411 2020-10-09
CN2020110724024 2020-10-09
CN202011072834 2020-10-09
CN2020110724113 2020-10-09

Publications (2)

Publication Number Publication Date
CN112699052A true CN112699052A (zh) 2021-04-23
CN112699052B CN112699052B (zh) 2022-04-15

Family

ID=75513622

Family Applications (9)

Application Number Title Priority Date Filing Date
CN202110051667.4A Withdrawn CN112732582A (zh) 2020-08-03 2021-01-14 一种基于搜索域缩减的软件测试用例进化生成方法
CN202110051696.0A Active CN112699053B (zh) 2020-08-03 2021-01-14 一种融入模糊聚类的软件测试方法
CN202110051668.9A Active CN112699051B (zh) 2020-08-03 2021-01-14 一种基于相关输入变量的变异体分组方法
CN202110051669.3A Active CN112699052B (zh) 2020-08-03 2021-01-14 一种基于相关输入变量的软件测试用例进化生成方法
CN202110051666.XA Withdrawn CN112699050A (zh) 2020-08-03 2021-01-14 一种基于变异体分组的软件测试用例多种群进化生成方法
CN202110051670.6A Active CN112732583B (zh) 2020-08-03 2021-01-14 一种基于聚类和多种群遗传算法的软件测试数据生成方法
CN202110051697.5A Active CN112699054B (zh) 2020-08-03 2021-01-14 一种软件测试用例有序生成方法
CN202110028394.1A Withdrawn CN112732577A (zh) 2020-08-03 2021-01-14 一种多任务软件测试用例进化生成方法
CN202110028395.6A Withdrawn CN112699045A (zh) 2020-08-03 2021-01-14 一种基于多种群遗传算法的软件测试用例生成方法

Family Applications Before (3)

Application Number Title Priority Date Filing Date
CN202110051667.4A Withdrawn CN112732582A (zh) 2020-08-03 2021-01-14 一种基于搜索域缩减的软件测试用例进化生成方法
CN202110051696.0A Active CN112699053B (zh) 2020-08-03 2021-01-14 一种融入模糊聚类的软件测试方法
CN202110051668.9A Active CN112699051B (zh) 2020-08-03 2021-01-14 一种基于相关输入变量的变异体分组方法

Family Applications After (5)

Application Number Title Priority Date Filing Date
CN202110051666.XA Withdrawn CN112699050A (zh) 2020-08-03 2021-01-14 一种基于变异体分组的软件测试用例多种群进化生成方法
CN202110051670.6A Active CN112732583B (zh) 2020-08-03 2021-01-14 一种基于聚类和多种群遗传算法的软件测试数据生成方法
CN202110051697.5A Active CN112699054B (zh) 2020-08-03 2021-01-14 一种软件测试用例有序生成方法
CN202110028394.1A Withdrawn CN112732577A (zh) 2020-08-03 2021-01-14 一种多任务软件测试用例进化生成方法
CN202110028395.6A Withdrawn CN112699045A (zh) 2020-08-03 2021-01-14 一种基于多种群遗传算法的软件测试用例生成方法

Country Status (1)

Country Link
CN (9) CN112732582A (zh)

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113342662A (zh) * 2021-06-11 2021-09-03 南京工业大学 一种面向神经元特性的ai系统软件模型变异技术
CN113590474B (zh) * 2021-07-12 2022-03-22 山东建筑大学 一种并行程序顽固变异体的判定方法及系统
CN114091622A (zh) * 2021-12-07 2022-02-25 西安邮电大学 一种基于自组织映射神经网络的变异体约简方法
CN114461535B (zh) * 2022-04-14 2022-07-12 山东建筑大学 面向并行变异算子的顽固变异体测试数据生成方法及系统
CN115248781B (zh) * 2022-09-22 2022-12-27 西南科技大学 一种组合测试用例生成方法、装置、设备及可读存储介质
CN115617700B (zh) * 2022-12-19 2023-04-07 华东交通大学 基于关系分析的测试用例设计、生成方法及系统

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103559129A (zh) * 2013-10-31 2014-02-05 中国矿业大学 基于遗传算法的统计回归测试数据生成方法
CN105808426A (zh) * 2016-02-28 2016-07-27 徐州工程学院 一种用于弱变异测试的路径覆盖测试数据生成方法
CN105930272A (zh) * 2016-04-22 2016-09-07 中国矿业大学 基于重要语句的分支覆盖测试数据生成方法
JP2017194894A (ja) * 2016-04-22 2017-10-26 日本電信電話株式会社 テストデータ生成プログラム及びテストデータ生成方法
CN109542783A (zh) * 2018-11-19 2019-03-29 北京航空航天大学 一种基于变量分割的扩展有限状态机测试数据生成方法
CN111352830A (zh) * 2020-01-06 2020-06-30 中国矿业大学 基于语句占优关系的变异测试数据进化生成方法

Family Cites Families (19)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2005502937A (ja) * 2001-05-15 2005-01-27 サイコジェニックス・インコーポレーテッド 行動情報工学を監視するシステムおよび方法
US20080052690A1 (en) * 2006-08-08 2008-02-28 Microsoft Corporation Testing software with a build engine
US8589736B2 (en) * 2011-08-12 2013-11-19 Tata Consultancy Services Limited System and method for automatic test data generation for relational testing
CN103593287B (zh) * 2013-10-30 2016-08-17 北京信息控制研究所 一种基于遗传算法的数据流测试用例自动生成方法
CN103605605B (zh) * 2013-11-21 2016-05-25 中国矿业大学 基于语句占优关系和两阶段遗传算法的高阶变异测试方法
CN103973511A (zh) * 2014-04-28 2014-08-06 南京邮电大学 一种基于消息组合变异的服务脆弱性测试方法
MX2017010142A (es) * 2015-02-09 2017-12-11 10X Genomics Inc Sistemas y metodos para determinar variacion estructural y ajuste de fases con datos de recuperacion de variantes.
CN105302719B (zh) * 2015-10-26 2017-11-28 北京科技大学 一种变异测试方法及装置
CN105868116B (zh) * 2016-04-15 2018-07-24 西北工业大学 基于语义变异算子的测试用例生成和优化方法
EP3388994A1 (de) * 2017-04-12 2018-10-17 Siemens Aktiengesellschaft Verfahren und vorrichtung zum rechnergestützten testen einer blockkette
CN107590313A (zh) * 2017-08-14 2018-01-16 天津大学 基于遗传算法和变异分析的优化测试向量生成方法
CN107729241B (zh) * 2017-10-12 2020-11-03 中国矿业大学 一种基于变异体分组的软件变异测试数据进化生成方法
CN108664391B (zh) * 2018-03-13 2021-03-23 北京邮电大学 一种面向程序状态的故障分类方法、变异测试方法及设备
CN108763055B (zh) * 2018-04-19 2020-08-25 北京航空航天大学 一种基于表观遗传的测试用例约束控制技术的构建方法
CN110399285B (zh) * 2018-04-24 2022-11-15 西安邮电大学 一种基于弱变异分析的测试用例约减方法
US10956133B2 (en) * 2018-11-28 2021-03-23 International Business Machines Corporation Static optimization of production code for dynamic profiling
CN111274119B (zh) * 2018-12-05 2022-05-17 徐州工程学院 一种基于多种群协同进化的变异测试数据生成方法
WO2020136880A1 (ja) * 2018-12-28 2020-07-02 三菱電機株式会社 テスト実行装置、テスト実行方法及びテスト実行プログラム
CN111563044B (zh) * 2020-05-11 2022-10-25 西安邮电大学 一种基于程序变异的程序谱错误定位方法

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103559129A (zh) * 2013-10-31 2014-02-05 中国矿业大学 基于遗传算法的统计回归测试数据生成方法
CN105808426A (zh) * 2016-02-28 2016-07-27 徐州工程学院 一种用于弱变异测试的路径覆盖测试数据生成方法
CN105930272A (zh) * 2016-04-22 2016-09-07 中国矿业大学 基于重要语句的分支覆盖测试数据生成方法
JP2017194894A (ja) * 2016-04-22 2017-10-26 日本電信電話株式会社 テストデータ生成プログラム及びテストデータ生成方法
CN109542783A (zh) * 2018-11-19 2019-03-29 北京航空航天大学 一种基于变量分割的扩展有限状态机测试数据生成方法
CN111352830A (zh) * 2020-01-06 2020-06-30 中国矿业大学 基于语句占优关系的变异测试数据进化生成方法

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
张岩等: "基于搜索空间自动缩减的路径覆盖测试数据进化生成", 《电子学报》 *

Also Published As

Publication number Publication date
CN112699053A (zh) 2021-04-23
CN112699051B (zh) 2022-04-01
CN112699051A (zh) 2021-04-23
CN112732583B (zh) 2022-02-18
CN112699053B (zh) 2022-02-22
CN112699052B (zh) 2022-04-15
CN112732582A (zh) 2021-04-30
CN112699050A (zh) 2021-04-23
CN112732577A (zh) 2021-04-30
CN112699054A (zh) 2021-04-23
CN112699054B (zh) 2022-02-18
CN112699045A (zh) 2021-04-23
CN112732583A (zh) 2021-04-30

Similar Documents

Publication Publication Date Title
CN112699052B (zh) 一种基于相关输入变量的软件测试用例进化生成方法
Steenwyk et al. Incongruence in the phylogenomics era
AU2015331619B2 (en) Haplotype phasing models
CN109542783B (zh) 一种基于变量分割的扩展有限状态机测试数据生成方法
Liu et al. Sparsity may cry: Let us fail (current) sparse neural networks together!
CN110414003A (zh) 建立文本生成模型的方法、装置、介质和计算设备
Peacock et al. Automatic equivalent mutants classification using abstract syntax tree neural networks
Rama et al. An automated framework for fast cognate detection and Bayesian phylogenetic inference in computational historical linguistics
CN113407185A (zh) 基于贝叶斯优化的编译器优化选项推荐方法
Rodriguez-Cardenas et al. Benchmarking causal study to interpret large language models for source code
Roux de Bézieux et al. CALDERA: finding all significant de Bruijn subgraphs for bacterial GWAS
CN113127342B (zh) 基于电网信息系统特征选择的缺陷预测方法及装置
CN108228232B (zh) 一种针对程序中循环问题的自动修复方法
McKibben et al. Applying machine learning to classify the origins of gene duplications
CN111737417B (zh) 修正自然语言生成结果的方法和装置
CN111240993B (zh) 一种基于模块依赖图的软件缺陷预测方法
CN117453539A (zh) 一种基于大语言模型赋能的编译器缺陷定位方法
CN116150317A (zh) 语言生成模型的评价方法、装置、电子设备及存储介质
CN113420150A (zh) 威胁情报知识检测方法、装置、计算设备及存储介质
CN107622184B (zh) 氨基酸可信度和修饰位点定位的评估方法
CN117041073B (zh) 网络行为预测方法、系统、设备及存储介质
CN117473510B (zh) 一种基于图神经网络和漏洞补丁关系的自动化漏洞挖掘技术
CN109508455B (zh) 一种GloVe超参数调优方法
Parker et al. Neural Machine Translation with Monte-Carlo Tree Search
Volkert Investigating ea based training of hmm using a sequential parameter optimization approach

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