CN103559129A - 基于遗传算法的统计回归测试数据生成方法 - Google Patents

基于遗传算法的统计回归测试数据生成方法 Download PDF

Info

Publication number
CN103559129A
CN103559129A CN201310529188.4A CN201310529188A CN103559129A CN 103559129 A CN103559129 A CN 103559129A CN 201310529188 A CN201310529188 A CN 201310529188A CN 103559129 A CN103559129 A CN 103559129A
Authority
CN
China
Prior art keywords
probability distribution
test data
probability
revising
input
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
CN201310529188.4A
Other languages
English (en)
Other versions
CN103559129B (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.)
China University of Mining and Technology CUMT
Original Assignee
China University of Mining and Technology CUMT
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 China University of Mining and Technology CUMT filed Critical China University of Mining and Technology CUMT
Priority to CN201310529188.4A priority Critical patent/CN103559129B/zh
Publication of CN103559129A publication Critical patent/CN103559129A/zh
Application granted granted Critical
Publication of CN103559129B publication Critical patent/CN103559129B/zh
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Complex Calculations (AREA)
  • Debugging And Monitoring (AREA)

Abstract

本发明公布了一种基于遗传算法的统计回归测试数据生成方法,旨在可以高效快速地生成覆盖目标路径的测试数据。具体步骤如下:(1)根据回归测试过程中的修改语句,确定相关输入变量;(2)对与修改语句相关输入变量的概率分布进行建模;(3)基于修改前程序中输入分量的部分概率分布及其扰动值形成初始种群;(4)根据设计的适应度函数,对种群中的每个个体计算其适应值;(5)根据计算出的个体适应值,判断目标函数是否找到最优解,若找到,则输出测试数据并转步骤6;否则,对个体进行变异操作,生成新个体并返回步骤4;(6)结合与修改语句不相关输入变量的概率分布,得到所有输入变量的概率分布;并基于该分布采样,生成测试数据。

Description

基于遗传算法的统计回归测试数据生成方法
技术领域
本专利属于软件测试领域,具体涉及一种基于遗传算法的统计回归测试数据生成方法,可用于软件测试中生成覆盖目标路径集的测试数据。 
背景技术
软件测试是软件质量保证的关键,是软件开发中不可缺少的环节,也是软件工程的重要组成部分,测试的效果直接关系到软件产品的质量。据美国工业界的统计,软件测试占整个软件开发周期总成本的50%以上,包括十分耗时、枯燥、非常困难且容易出错的诸多环节。另外,随着计算机控制对象复杂度的不断提高和软件功能的不断增强,软件的规模也在不断地增大。大型系统的代码量甚至达到了千万行以上,这使得软件测试的开销也越来越大。在软件测试工作中最重要的环节就是测试数据的生成,这也是非常耗时的一个环节,测试数据的合理、准确与否常常关系到整个测试的成败。因此如果将该环节自动化,无疑将会缩短软件的开发周期,提高软件质量。 
统计测试可视为是传统随机测试的统计版本,传统随机测试是基于均匀分布从输入域中选取测试数据,而统计测试是基于某种特定的概率分布选取测试数据。统计测试的基本思想是:建立反映程序结构的概率分布,然后基于该概率分布,从输入域中采样得到满足程序覆盖要求的测试数据。 
研究表明,统计测试是一种非常有效的软件测试方法,检错能力明显优于传统的随机和结构测试。统计测试克服了随机与结构测试的缺点,通过建立反映程序输入变量的概率分布,采样生成测试数据。将基于搜索的方法用于统计测试,能够自动生成输入变量的概率分布,从而大大提高了统计测试的效率。 
与传统测试的不同之处在于,统计测试能够对程序的可靠性进行估计,在其他的测试方式中,测试用例都是经过精心设计和筛选的,无法对程序的可靠性进行评估。统计测试中,通过在优化的概率分布中采样,得到一定数量的测试数据;根据测试数据的执行效果和缺陷统计,能够反映程序使用情况的统计特性;根据统计学原理,评价软件的可靠性。由于统计测试基于统计学和随机实验,因此,所得结果既有依据,又有说服力。 
已有的回归测试方法,多建立被测程序的测试数据库,在回归测试过程中,不断更新该数据库,以满足修改后程序的测试要求。鉴于数据库的维护是一项非常繁重的工作,因此, 若能利用统计测试的优势,在回归测试过程中,仅更新程序输入变量的概率分布,并基于该分布采样得到测试数据,那么,将大大减少回归测试的工作量,且可以利用统计测试的统计特性提高软件的可靠性与质量。 
发明内容
本发明根据回归测试过程中修改语句相关的变量,采用遗传算法,生成修改后程序的部分概率分布;与修改语句不相关变量的概率分布一起,形成整个被测程序输入变量的概率分布;基于上述分布,采样生成覆盖目标路径的测试数据。 
本发明所要解决的技术问题:克服现有方法的不足,提供一种软件测试方法,用以提高软件测试效率,保证软件质量。 
本发明的技术方案:提出了一种统计回归测试数据生成方法。 
其特征在于步骤如下: 
步骤1:根据回归测试过程中修改语句,确定相关的输入变量。 
根据输入变量与分支语句的相关性,只更新与修改语句相关输入变量的概率分布,从而提高输入变量概率分布构建的效率。 
步骤2:数学模型的建立 
为了使输入变量X独立于实际的数据类型和范围,对被测程序的每个输入分量标准化,使每个分量的取值均在[0,1)之间,记标准化后的第i个分量仍为xi,i=1,2,?,n。建立基于遗传算法的统计回归测试数据生成数学模型如下: 
min f ( d i , | D ij ′ | , p x i j )
s.t.di∈Z+
|D′ij|∈[0,D′i|] 
p x ij ∈ [ 0,1 ]
i=1,2,…,v;j=1,2,…,di
D′i为输入分量xi的输入域,
Figure BDA0000405711860000023
为将D′i划分后的若干数据间隔,其中,di是D′i划分的数据间隔数,间隔长度分别为
Figure BDA0000405711860000024
故有
Figure BDA0000405711860000025
分别为xi在各数据间隔上的取值概率,有
Figure BDA0000405711860000027
步骤3:使用遗传算法生成测试数据 
对步骤2中的优化模型使用遗传算法进行优化,以得到满足修改后程序覆盖概率要求的 输入变量的部分概率分布,进而基于该分布采样,生成测试数据。具体方法如下: 
[1]:分析修改前程序输入变量,记该输入分量在修改前程序中的部分概率分布为Φ1; 
[2]:基于Φ1及其扰动值形成初始种群; 
[3]:对每个个体进行解码操作,运行被测程序,根据步骤2中的方法选择合适的适应度函数,计算每个个体的适应值; 
[4]:判断目标函数是否找到最优解,若找到,则算法结束,得到满足覆盖概率要求的输入变量的部分概率分布Φ1,输出测试数据并转步骤6; 
[5]:对每个个体进行编码操作,运行遗传算法,对个体进行变异操作,生成新的个体并返回步骤3; 
[6]:和修改前程序中与修改语句不相关的输入变量概率分布合并,得到修改后程序输入变量的概率分布;并基于该分布采样,生成测试数据。 
本发明的主要贡献在于:(1)将统计测试方法应用于回归测试数据生成中,丰富了回归测试的理论与方法,为回归测试的研究,提供了新的思路;(2)采用遗传算法,生成修改后程序的部分概率分布,提高了程序输入变量概率分布的生成效率;(3)将所提方法应用于多个基准与工业程序的测试,并通过实验验证所提方法的有效性。 
附图说明
图1是本发明的总流程图; 
图2是遗传算法基本流程图; 
图3是变异操作过程图; 
图4是修改前后的示例程序的源代码; 
图5是修改后程序的控制流图。 
具体实施方式
本发明将统计测试方法应用于回归测试中,提出基于遗传算法的统计回归测试数据生成方法。该方法根据回归测试过程中修改语句相关的变量,采用遗传算法,生成修改后程序的部分概率分布,与修改语句不相关变量的概率分布一起,形成整个被测程序输入变量的概率分布。基于上述分布,采样生成覆盖目标路径的测试数据。 
该部分结合具体附图,对本发明的实施方式做详细说明。所提出方法的流程图如图1所示,具体实施步骤亦根据该图拟定,下面对本发明的技术方案做进一步详细描述。 
步骤1:根据回归测试过程中修改语句,确定相关的输入变量。 
既然是回归测试,就说明已经具有了原来程序输入变量的概率分布。一般来讲,修改前后程序输入变量的概率分布有一定的相似性。根据输入变量与分支语句的相关性,只更新与修改语句相关输入变量的概率分布,从而提高输入变量概率分布构建的效率。 
步骤2:数学模型的建立 
步骤201:记修改前的程序为P,目标路径集为L:{l1,l2,…,lm}。其中,m是P包含的目标路径条数,输入域为D。P的输入变量的概率分布为Φ,基于该分布从D中采样,得到的测试数据覆盖每条目标路径的最小概率为pmin。记对P修改后的程序为P',包含的目标路径集为L':{l′1,l′2,…,lm''}。其中,m'是P'包含的路径条数,输入域为D'。现在要解决的问题是:建立关于P'的输入变量的概率分布Φ',使得基于该分布从D'中采样,得到的测试数据覆盖目标路径L'的最小概率为p'min。 
步骤202:记修改后程序的输入变量为X={x1,x2,…,xn},n是输入变量包含分量的个数。根据文献《基于搜索空间自动缩减的路径覆盖测试数据进化生成方法的方法》,可以得到与修改语句相关的输入分量,记为X1={x1,x2,…,xv}。其中,v≤n,输入域为
Figure BDA00004057118600000410
这些输入分量的概率分布,记为Φ'1,即本文要求的修改后程序的部分概率分布。 
步骤203:与修改语句不相关的输入分量记为X2={xv+1,xv+2,…,xn},输入域为D'2,对应的概率分布为Φ'2。X2与修改语句不相关,因此,该部分分量的概率分布与修改前程序的完全相同。那么,P'的输入变量概率分布Φ'的生成问题,就转化为Φ'1的生成问题。 
步骤204:将寻找部分概率分布Φ'1的问题建模为一个优化问题,优化的目标为基于某概率分布采样得到的测试数据,覆盖目标路径的最小概率与设定的期望最小概率p'min的差值,记为可以知道,越接近p'min
Figure BDA0000405711860000044
的值越小。特别的,当存在与Φ'2合并以后得到概率分布
Figure BDA0000405711860000046
使得等于p'min时,
Figure BDA0000405711860000048
的值为0。 
因此,输入变量的概率分布生成问题能够建模为如下最小化问题: 
min f ( Φ 1 * )
步骤205:对被测程序的每个输入分量标准化,使每个分量的取值均在[0,1)之间,这样输 入变量X便独立于实际的数据类型和范围。在不引起混淆的情况下,记标准化后的第i个分量仍为xi,i=1,2,…,n,其输入域为D′i。将D′i划分为若干数据间隔,记为
Figure BDA0000405711860000057
其中,di是D′i划分的数据间隔数,间隔长度分别为
Figure BDA0000405711860000059
记xi在各数据间隔上的取值概率分别为
Figure BDA00004057118600000510
Figure BDA00004057118600000511
这样一来,Φ'可表示为: 
Φ ′ = D 11 ′ , | p x 1 1 D 12 ′ | p x 1 2 · · · D 1 d 1 ′ | p x 1 d 1 D 21 ′ | p x 2 1 D 22 ′ | p x 2 2 · · · D 2 d 2 ′ | p x 2 d 2 · · · · · · D n 1 ′ | p x n 1 D n 2 ′ | p x n 2 · · · D n d n ′ | p x n d n
根据Φ'在输入域D'中采样,得到测试数据X,部分概率分布可以表示为: 
Φ 1 * = D 11 ′ , | p x 1 1 D 12 ′ | p x 1 2 · · · D 1 d 1 ′ | p x 1 d 1 D 21 ′ | p x 2 1 D 22 ′ | p x 2 2 · · · D 2 d 2 ′ | p x 2 d 2 · · · · · · D v 1 ′ | p x v 1 D v 2 ′ | p x v 2 · · · D v d v ′ | p x v d v
步骤206:鉴于式中各输入分量的数据间隔数、数据间隔长度,以及该数据间隔上的取值概率决定了的表示,因此,该优化问题可以进一步表示如下: 
min f ( d i , | D ij ′ | , p x i j )
s.t.di∈Z+
|D'ij|∈[0,|D′i|] 
p x ij ∈ [ 0,1 ]
i=1,2,…,v;j=1,2,…,di
步骤3:使用遗传算法生成测试数据 
采用遗传算法求解步骤2中的数学模型,以得到满足修改后程序覆盖概率要求的输入变量的部分概率分布。采用遗传算法求解时,分别对采用实数编码得到
Figure BDA0000405711860000054
那么,形成的进化个体,记为
Figure BDA0000405711860000055
可以表示为
Figure BDA0000405711860000056
下面结合图1,对数学模型的进化优化进行说明,以明确算法思想和流程。 
步骤301:形成初始种群 
输入分量在修改前程序中的部分概率分布为Φ1,把该部分概率分布作为初始进化种群的部分个体,将会提高初始种群的性能,从而加快种群向Φ'1进化的速度。 
由于Φ'2是与修改语句不相关的输入分量对应的概率分布,因此,程序修改前这些与修改语句不相干的输入分量的部分概率分布已经存在,且与Φ'2相等,故Φ1=Φ\Φ'2。此时,基于Φ1及其扰动值形成初始种群。 
步骤302:计算个体适应值 
对种群中的每个个体进行解码操作,运行被测程序,根据设计的适应度函数,计算每个个体的适应值。 
根据步骤2中的目标函数,适应度函数可以表示为: 
从概率分布中采样,得到K个测试数据,计算这些测试数据运行程序后覆盖目标路径集的统计特性,假设对于任一l′i∈L',被测试数据执行的概率为
Figure BDA0000405711860000067
故m'条目标路径对应的执行概率分别为
Figure BDA0000405711860000066
这样一来, 
p ^ = 1 K min l i ′ ∈ L ( Σ j = 1 K e l i ′ , j )
Figure BDA0000405711860000064
Figure BDA0000405711860000065
等于p'min时,得到的部分概率分布即为需要建立的满足修改后程序覆盖要求的部分概率分布。 
步骤303:变异操作 
根据计算出的个体适应值,判断目标函数是否找到最优解,若找到,则终止算法,输出测试数据并转到步骤304;否则,对每个个体进行编码操作,运行遗传算法,对个体进行变异操作,生成新的个体,然后转到步骤302。 
设置变异概率pm,随机生成[0,1]之间的一个随机数,如果该随机数小于或等于pm,那么,从
Figure BDA0000405711860000068
中随机选择一个基因位,实施变异操作。对于实施变异操作的基因位,再随机选择一种相应的变异算子。所有可能的变异算子如下表所列: 
Figure BDA0000405711860000071
表中,ε和σ的取值根据具体程序确定。例如,整型输入分量x的输入域为[0,100),标准化到[0,1)之间,实数编码后,仍为[0,1)。对该分量实施
Figure BDA0000405711860000072
Figure BDA0000405711860000073
变异算子时,要求数据间隔的变化符合输入分量的数据类型,且能够产生有效的变化,可以设置ε=0.01,这样,就可以让分量x的某数据间隔在[0,100)之间以步长1增大或减小。由于采样概率的取值在[0,1]之间,故σ一般取0.1。 
并非所有的变异操作,都能使个体对应输入变量的概率分布满足要求,鉴于此,在种群进化过程中,比较当前个体与父代个体的适应值,跟踪使个体适应值变小的变异操作。若当前个体的适应值小于父代个体,那么,继续采用前一代的变异操作;否则,依一定概率选择表1的一个变异操作,具体过程如图3所示。 
步骤304:测试数据的生成 
与修改前程序中和修改语句不相关输入变量的概率分布合并,得到修改后程序输入变量的概率分布;并基于此分布采样,生成测试数据。 
步骤305:遗传算法具体步骤 
遗传算法的基本步骤如图2所示,描述如下: 
[1]对算法所需的控制参数赋值,编码被测程序的语句,确定目标路径,插装被测程序; 
[2]初始化种群; 
[3]解码进化个体,执行插桩后的被测程序,计算进化个体适应值; 
[4]判断是否满足算法终止条件,若满足,转[6]; 
[5]实施选择、交叉和变异等遗传操作,生成子代种群,转[3]; 
[6]终止算法运行,输出测试数据。 
需要说明的是,本文没有使用交叉算子。 
步骤4:实例分析 
以程序simple为例,说明本文方法的应用过程,如图4所示,(a)和(b)分别为修改前和修改后程序的源代码,程序的修改点为第3行,条件语句由"if(b>10)"变为“if(b>18)”;图5为修改后程序的控制流图,目标路径为l′1,l′2,l′3,l′4,取p'min=0.24。 
对于修改后程序,其输入变量的均匀概率分布如下式所示: 
Φ ′ = 9 × 2 / ( 50 × 20 ) , l 1 ′ , 9 × 18 / ( 50 × 20 ) , l 2 ′ , 41 × 3 / ( 50 × 20 ) , l 3 ′ , 41 × 17 / ( 50 × 20 ) , l 4 ′ .
当存在一个概率分布,使得目标路径l′1,l′2,l′3,l′4被覆盖的概率均为0.25,那么,这4条目标路径就有相同的被覆盖概率,且称这样的概率分布为理想概率分布。具体如下式所示: 
Φ ′ = 1 / 4 , l 1 ′ , 1 / 4 , l 2 ′ , 1 / 4 , l 3 ′ , 1 / 4 , l 4 ′ .
假设修改前程序输入变量的概率分布为理想概率分布,如下式所示: 
Φ ( a , b ) = [ 1,10 ) | 0.5 [ 10,50 ] | 0.5 [ 1,4 ) | 0.5 [ 4,10 ] | 0.0 { 10,20 ] | 0.5
根据步骤2的方法,首先,确定与修改语句不相关的输入分量为a,该分量对应的部分概率分布Φ1=[1,10)|0.5 [10,50]|0.5。鉴于a与修改语句不相关,故Φ1与修改后程序对应a的部分概率分布完全相同。因此,只需建立修改后程序输入分量b的部分概率分布Φ′2,与Φ1合并后,即可得到满足程序覆盖概率要求的概率分布。如此,将Φ'2的生成问题建模为一个优化问题,记该问题的决策变量为Φ′2,如下式所示: 
Φ 2 * = D 21 ′ , | p x 2 1 D 22 ′ | p x 2 2 · · · D 2 d 2 ′ | p x 2 d 2
根据步骤301,初始进化种群由修改前程序输入分量b的部分概率分布Φ2=Φ\Φ1及其5个扰动值构成。 
根据步骤302,对
Figure BDA0000405711860000091
中的
Figure BDA0000405711860000099
采用实数编码,得到
Figure BDA0000405711860000092
形成进化个体其中j=1,2,…,d2。对于某进化个体解码后得到的
Figure BDA0000405711860000094
Figure BDA0000405711860000095
中采样得到800个测试数据,用这些测试数据运行程序后,统计4条目标路径被覆盖的情况。如果li被第j个测试数据覆盖,则
Figure BDA00004057118600000910
为1;否则,
Figure BDA00004057118600000911
为0。进而得到
Figure BDA0000405711860000096
的值,即为
Figure BDA0000405711860000097
的适应值。 
依据计算出的个体适应值,判断目标函数是否找到最优解。若找到,则终止程序,输出测试数据并退出;否则,根据步骤303对每个个体进行变异操作,生成新的个体。 
最终得到Φ'2=[1,4)|0.5[4,19)|0.05[19,20]|0.45,与Φ1合并后,即为满足修改后程序覆盖概率要求输入变量的概率分布,如下式所示: 
Φ ′ ( a , b ) = [ 1,10 ) | 0.5 [ 10,50 ] | 0.5 [ 1,4 ) | 0.5 [ 4,19 ] | 0.05 { 19,20 ] | 0.45
基于该分布采样,得到覆盖目标路径的测试数据。 

Claims (5)

1.一种基于遗传算法的统计回归测试数据生成方法,其特征在于,该方法包括: 
(1)针对统计回归测试数据生成问题,对回归测试过程中修改后程序的部分概率分布建立数学模型。 
(2)使用遗传算法,通过生成初始种群、计算个体适应值和变异操作等步骤实现上述方法,进化生成满足修改后程序覆盖概率要求的输入变量的部分概率分布。 
(3)与修改前程序中和修改语句不相关输入变量的概率分布合并,得到修改后程序输入变量的概率分布;并基于该分布采样,生成测试数据。 
2.权利要求1所述的基于遗传算法的统计回归测试数据生成方法,其特征在于,根据输入变量与分支语句的相关性,只更新与修改语句相关输入变量的概率分布,建立满足修改后程序覆盖概率要求的输入变量的部分概率分布数学模型,具体如下: 
Figure FDA0000405711850000011
s.t.di∈Z+
|D′ij|∈[0,|D′i|] 
Figure FDA0000405711850000012
i=1,2,…,v;j=1,2,…,di
为了使输入变量独立于实际的数据类型和范围,对被测程序的每个输入分量标准化,使每个分量的取值均在[0,1)之间,记标准化后的第i个分量仍为xi,i=1,2,…,n。其中,D′i为输入分量xi的输入域,
Figure FDA0000405711850000017
为将D′i划分后的若干数据间隔,其中,di是D′i划分的数据间隔数,间隔长度分别为
Figure FDA0000405711850000013
那么,
Figure FDA0000405711850000014
分别为xi在各数据间隔上的取值概率,有
Figure FDA0000405711850000016
3.权利要求1所述的基于遗传算法的统计回归测试数据生成方法,其特征在于,生成初始种群的方法如下: 
输入分量在修改前程序中的部分概率分布为Φ1,把该部分概率分布作为初始进化种群的部分个体,将提高初始种群的性能,加快种群向Φ′1进化的速度。 
因Φ′2是与修改语句不相关的输入分量对应的概率分布,所以,程序修改前这些与修改语句不相干的输入分量的部分概率分布已经存在,且与Φ′2相等,故Φ1=Φ\Φ′2。此时,基于Φ1及其扰动值形成初始种群。 
4.权利要求1所述的基于遗传算法的统计回归测试数据生成方法,其特征在于,适应度函数的设计如下: 
根据权利要求2中给出的数学模型,适应度函数表示为: 
Figure FDA0000405711850000021
从概率分布
Figure FDA0000405711850000022
中采样,得到K个测试数据,计算这些测试数据运行程序后覆盖目标路径集的统计特性,假设对于任一l′i∈L',被测试数据执行的概率为
Figure FDA0000405711850000027
那么,m'条目标路径对应的执行概率分别为这样一来, 
Figure FDA0000405711850000023
Figure FDA0000405711850000024
等于p′min时,得到的部分概率分布即为需要建立的满足修改后程序覆盖要求的部分概率分布。 
5.权利要求1所述的基于遗传算法的统计回归测试数据生成方法,其特征在于,对进化个体的变异操作如下: 
设置变异概率pm,随机生成[0,1]之间的一个随机数,若该随机数小于或等于pm,则从
Figure FDA0000405711850000029
中随机选择一个基因位,实施变异操作。对于实施变异操作的基因位,再随机选择一种相应的变异算子。所有可能的变异算子如下表所列: 
Figure FDA0000405711850000026
表中,ε和σ的取值根据具体程序确定。例如,整型输入分量x的输入域为[0,100),标准化到[0,1)之间,实数编码后,仍为[0,1)。那么,对该分量实施变异算子时,要求数据间隔的变化符合输入分量的数据类型,且能够产生有效的变化,可以设置ε=0.01,这样, 就可以让分量x的某数据间隔在[0,100)之间以步长1增大或减小。由于采样概率的取值在[0,1]之间,故σ一般取0.1。 
并非所有的变异操作,都能使个体对应输入变量的概率分布满足要求,鉴于此,在种群进化过程中,比较当前个体与父代个体的适应值,跟踪使个体适应值变小的变异操作。若当前个体的适应值小于父代个体,则继续采用前一代的变异操作;否则,依一定概率选择表1的一个变异操作。 
CN201310529188.4A 2013-10-31 2013-10-31 基于遗传算法的统计回归测试数据生成方法 Expired - Fee Related CN103559129B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201310529188.4A CN103559129B (zh) 2013-10-31 2013-10-31 基于遗传算法的统计回归测试数据生成方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201310529188.4A CN103559129B (zh) 2013-10-31 2013-10-31 基于遗传算法的统计回归测试数据生成方法

Publications (2)

Publication Number Publication Date
CN103559129A true CN103559129A (zh) 2014-02-05
CN103559129B CN103559129B (zh) 2016-08-17

Family

ID=50013380

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201310529188.4A Expired - Fee Related CN103559129B (zh) 2013-10-31 2013-10-31 基于遗传算法的统计回归测试数据生成方法

Country Status (1)

Country Link
CN (1) CN103559129B (zh)

Cited By (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105607989A (zh) * 2014-11-18 2016-05-25 阿里巴巴集团控股有限公司 一种软件测试数据抽样方法及系统
CN105718368A (zh) * 2016-01-15 2016-06-29 西安邮电大学 一种软件测试数据扩增方法
CN105808885A (zh) * 2016-03-30 2016-07-27 徐州工程学院 一种基于遗传算法的日照约束下建筑容积率计算方法
CN105808867A (zh) * 2016-03-16 2016-07-27 徐州工程学院 一种基于模拟退火算法的建筑高度优化设计的方法
CN105930272A (zh) * 2016-04-22 2016-09-07 中国矿业大学 基于重要语句的分支覆盖测试数据生成方法
CN106502908A (zh) * 2016-11-07 2017-03-15 牡丹江师范学院 基于统计分析的可执行基础路径进化生成方法
CN108304625A (zh) * 2018-01-15 2018-07-20 北京航空航天大学 人工智能程序员书写数字飞行器代码的遗传编程决策方法
CN110096448A (zh) * 2019-05-10 2019-08-06 南京大学 一种兼顾深度以及广度的模糊测试搜索方法
CN112699052A (zh) * 2020-08-03 2021-04-23 徐州工程学院 一种基于相关输入变量的软件测试用例进化生成方法
WO2023103574A1 (zh) * 2021-12-10 2023-06-15 深圳前海微众银行股份有限公司 单元测试方法、装置、电子设备、存储介质和程序

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20080222061A1 (en) * 2007-03-10 2008-09-11 Hendra Soetjahja Adaptive Multivariate Model Construction
CN102323906A (zh) * 2011-09-08 2012-01-18 哈尔滨工程大学 一种基于遗传算法的mc/dc测试数据自动生成方法
CN102331966A (zh) * 2011-01-10 2012-01-25 中国矿业大学 面向路径的软件测试数据进化生成系统

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20080222061A1 (en) * 2007-03-10 2008-09-11 Hendra Soetjahja Adaptive Multivariate Model Construction
CN102331966A (zh) * 2011-01-10 2012-01-25 中国矿业大学 面向路径的软件测试数据进化生成系统
CN102323906A (zh) * 2011-09-08 2012-01-18 哈尔滨工程大学 一种基于遗传算法的mc/dc测试数据自动生成方法

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
WAN-QIU ZHANG,GONG DUNWEI等: "Evolutionary generation of test data for many paths coverage", 《2010 CHINESE CONTROL AND DECISION CONFERENCE》 *
姚香娟: "基于路径比较的变异测试方法", 《电子学报》 *

Cited By (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105607989A (zh) * 2014-11-18 2016-05-25 阿里巴巴集团控股有限公司 一种软件测试数据抽样方法及系统
CN105718368A (zh) * 2016-01-15 2016-06-29 西安邮电大学 一种软件测试数据扩增方法
CN105808867A (zh) * 2016-03-16 2016-07-27 徐州工程学院 一种基于模拟退火算法的建筑高度优化设计的方法
CN105808885B (zh) * 2016-03-30 2018-12-21 徐州工程学院 一种基于遗传算法的日照约束下建筑容积率计算方法
CN105808885A (zh) * 2016-03-30 2016-07-27 徐州工程学院 一种基于遗传算法的日照约束下建筑容积率计算方法
CN105930272A (zh) * 2016-04-22 2016-09-07 中国矿业大学 基于重要语句的分支覆盖测试数据生成方法
CN105930272B (zh) * 2016-04-22 2018-10-02 中国矿业大学 基于重要语句的分支覆盖测试数据生成方法
CN106502908A (zh) * 2016-11-07 2017-03-15 牡丹江师范学院 基于统计分析的可执行基础路径进化生成方法
CN108304625A (zh) * 2018-01-15 2018-07-20 北京航空航天大学 人工智能程序员书写数字飞行器代码的遗传编程决策方法
CN108304625B (zh) * 2018-01-15 2021-10-08 北京航空航天大学 人工智能程序员书写数字飞行器代码的遗传编程决策方法
CN110096448A (zh) * 2019-05-10 2019-08-06 南京大学 一种兼顾深度以及广度的模糊测试搜索方法
CN112699052A (zh) * 2020-08-03 2021-04-23 徐州工程学院 一种基于相关输入变量的软件测试用例进化生成方法
WO2023103574A1 (zh) * 2021-12-10 2023-06-15 深圳前海微众银行股份有限公司 单元测试方法、装置、电子设备、存储介质和程序

Also Published As

Publication number Publication date
CN103559129B (zh) 2016-08-17

Similar Documents

Publication Publication Date Title
CN103559129A (zh) 基于遗传算法的统计回归测试数据生成方法
CN108509335B (zh) 基于遗传算法优化的软件测试数据生成方法
Xia et al. Collective personalized change classification with multiobjective search
CN112540849B (zh) 一种分布式计算作业的参数配置优化方法及系统
Falsone et al. A randomized algorithm for nonlinear model structure selection
CN112699051B (zh) 一种基于相关输入变量的变异体分组方法
CN110533150B (zh) 基于支持向量机回归模型的测试生成与重用系统及方法
CN105718368A (zh) 一种软件测试数据扩增方法
CN113469449A (zh) 脱硫系统的寻优控制方法及系统
CN104281522B (zh) 基于语句覆盖和缺陷检测的多目标测试数据缩减方法
CN111666221B (zh) 基于天牛须搜索的软件测试数据集扩增方法
US11914507B2 (en) Software test apparatus and software test method
CN117453539A (zh) 一种基于大语言模型赋能的编译器缺陷定位方法
CN111125634B (zh) 基于质量方法的可靠性分析方法及系统
Sestelo Perez et al. FWDselect: An R package for variable selection in regression models
CN105930272A (zh) 基于重要语句的分支覆盖测试数据生成方法
Ghiduk et al. Using genetic algorithms and dominance concepts for generating reduced test data
JP6648828B2 (ja) 情報処理システム、情報処理方法、及び、プログラム
CN109743200B (zh) 基于资源特征的云计算平台计算任务成本预测方法及系统
Dufek et al. Data-driven symbolic ensemble models for wind speed forecasting through evolutionary algorithms
CN110554952B (zh) 一种基于搜索的分层回归测试数据生成方法
CN115017015B (zh) 一种边缘计算环境下程序异常行为检测方法及系统
Kumar et al. A novel probabilistic-ABC based boosting model for software defect detection
CN113657656A (zh) 贷款数据分析预测方法及装置
CN115210657A (zh) 使用优化参数集制造或控制技术系统

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant
CF01 Termination of patent right due to non-payment of annual fee
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20160817

Termination date: 20171031