CN103617119A - 基于语句交互覆盖的回归测试用例选择方法 - Google Patents
基于语句交互覆盖的回归测试用例选择方法 Download PDFInfo
- Publication number
- CN103617119A CN103617119A CN201310643493.6A CN201310643493A CN103617119A CN 103617119 A CN103617119 A CN 103617119A CN 201310643493 A CN201310643493 A CN 201310643493A CN 103617119 A CN103617119 A CN 103617119A
- Authority
- CN
- China
- Prior art keywords
- test case
- statement
- test
- mutual
- collection
- 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
Links
Images
Landscapes
- Debugging And Monitoring (AREA)
Abstract
本发明公开了一种基于语句交互覆盖的回归测试用例选择方法,包括如下步骤:(1)对待测程序进行插桩,在插桩后的程序上执行用于测试被测程序的已有测试用例集中的每个测试用例,记录每个测试用例的语句覆盖信息并构造出测试用例-语句覆盖矩阵,确定需覆盖的语句集R;(2)基于测试用例-语句覆盖矩阵生成可覆盖的语句间交互集I;(3)根据可覆盖的语句间交互集I、需覆盖的语句集R和已有测试用例集,按照选择策略执行测试用例集压缩方法,并最终生成压缩后的测试用例集。该方法具有选择出的测试用例数量较小,同时又不会显著降低原有测试用例集的缺陷检测能力等优点。从而可显著降低回归测试成本,并进一步提高回归测试的效率。
Description
技术领域
本发明属于计算机软件测试技术领域,具体涉及一种基于语句交互覆盖的回归测试用例选择方法,用于提高回归测试的效率,减少回测测试中的复杂度并使选择出的测试用例仍具备较高的错误检测能力。
背景技术
软件产品在开发和维护过程中,因移除内在缺陷、完善已有功能、重构已有代码或提高运行性能等,需要执行代码修改并触发软件演化。随着以统一过程和敏捷方法为代表的增量迭代式开发过程的流行,软件演化频率也随之迅速提高并亟需经济有效的测试方法来确保演化后软件产品的质量。回归测试是其中一种有效方法,可有效保证代码修改的正确性并避免代码修改对被测程序其他模块产生的副作用。执行回归测试时的一个核心问题是测试用例集的维护策略设定。在软件持续演化过程中,因新测试用例的不断添加,导致测试用例集规模持续增长并增加了测试用例集的执行和维护开销。例如有研究人员在某一合作企业内,当测试一个包含约2万行代码的软件产品时,发现运行所有测试用例后,所需时间高达7周。而测试用例集压缩方法在满足指定测试需求(例如语句、分支和定义使用对等)的覆盖前提下,通过识别并移除冗余测试用例来压缩测试用例集规模,从而提高回归测试效率并降低回归测试成本。
然而传统的测试用例集压缩方法仅考虑对单一测试需求的覆盖,随后设计出新颖的算法来完成测试用例集的压缩并尽可能的使得压缩后的测试用例集规模更小。在一些实证研究中,研究人员发现测试用例集压缩方法虽可以大幅度缩减压缩后的测试用例集规模,但同时也会显著降低原有测试用例集的缺陷检测能力。
综上所述,为提高压缩后的测试用例集缺陷检测能力,有必要设计出一种系统方法来提高压缩后的测试用例集的缺陷检测能力。本发明由此而来。
发明内容
本发明目的在于提供一种基于语句交互覆盖的回归测试用例选择方法,解决了现有技术中测试用例集压缩方法虽然大幅度缩减压缩后的测试用例集规模,但显著降低原有测试用例集的缺陷检测能力等难题,本发明的方法有效降低测试用例数量并保持足够高的错误检测能力。
为了解决现有技术中这些问题,本发明提供的技术方案如下:
一种基于语句交互覆盖的回归测试用例选择方法,包括如下步骤:
(1)对待测程序进行插桩,在插桩后的程序上执行用于测试被测程序的已有测试用例集中的每个测试用例,记录每个测试用例的语句覆盖信息并构造出测试用例-语句覆盖矩阵,确定需覆盖的语句集R;
(2)基于测试用例-语句覆盖矩阵生成可覆盖的语句间交互集I;
(3)根据可覆盖的语句间交互集I、需覆盖的语句集R和已有测试用例集,按照选择策略执行测试用例集压缩方法,并最终生成压缩后的测试用例集。
优选的技术方案中,所述方法步骤(3)中执行测试用例集压缩方法按照以下步骤进行:
1)构造压缩后的测试用例集,并设置压缩后测试用例集为空集;
2)按照第一选择策略S1从已有测试用例集中选择覆盖语句集R中相应的语句的测试用例,添加到压缩后的测试用例集中,并确定语句间交互集I中已经覆盖的语句交互;
3)按照第二选择策略S2从已有测试用例集中选择覆盖语句间交互集I中尚未覆盖的语句交互的测试用例,添加到压缩后的测试用例集中。
优选的技术方案中,所述方法步骤2)按照第一选择策略S1从已有测试用例集中选择覆盖需覆盖的语句集R中相应的语句的测试用例按照如下步骤进行:
A1)计算出需覆盖的语句集R中每个语句的基数,获取需覆盖的语句集R中语句的最小基数;所述基数为测试用例集中覆盖该语句的测试用例数量;
A2)从已有测试用例集中选择测试用例子集T1,使其中的测试用例覆盖拥有最小基数的语句个数最多;
A3)如果测试用例子集T1仅包含一个测试用例,则将该测试用例为被选定的测试用例;如果测试用例子集T1包含两个或两个以上的测试用例时,从测试用例子集T1中选择测试用例子集T2,使其中的测试用例覆盖语句间交互集I中语句交互最多;
A4)如果测试用例子集T2仅包含一个测试用例,则该测试用例为被选定的测试用例;如果测试用例子集T2包含两个或两个以上的测试用例时,从测试用例子集T2中随机选择一个测试用例作为被选定的测试用例。
优选的技术方案中,所述方法步骤3)按照第二选择策略S2从已有测试用例集中选择未同时覆盖需覆盖的语句集R中相应的语句和语句间交互集I的语句交互的测试用例按照如下步骤进行:
A1)计算出语句间交互集I中每个语句交互的基数,获取需覆盖的语句间交互集I中语句交互的最小基数;所述基数为测试用例集中覆盖该语句交互的测试用例数量;
A2)从已有测试用例集中选择测试用例子集T1’,使其中的测试用例覆盖拥有最小基数的语句交互个数最多;
A3)如果测试用例子集T1’仅包含一个测试用例,则将该测试用例为被选定的测试用例;如果测试用例子集T1’包含两个或两个以上的测试用例时,从测试用例子集T1’中随机选择一个测试用例作为被选定的测试用例。
优选的技术方案中,所述方法步骤3)中已有测试用例集为原始已有测试用例集中排除已添加到压缩后的测试用例集中测试用例的测试用例集合。
优选的技术方案中,所述方法步骤(1)中假设已有测试用例集为T,其中包含m个测试用例,待测程序中包含需要覆盖的n个语句,则测试用例-语句覆盖矩阵是一个m×n的矩阵,表示为:
其中若第i个测试用例覆盖第j个语句,则cij取值为1,否则cij取值为0;如果语句k与语句u构成的语句交互是可覆盖的,当且仅当存在测试用例q,使得cqk和cqu同时取值为1;其中i、j、n、k、u、q、m均是整数,且0<=i<=m;0<=j<=n;0<=k<=n;0<=u<=n;0<=q<=m。
本发明涉及回归测试中的测试用例集优化方法。本发明所要解决的问题是传统测试用例集压缩方法虽可以大幅度缩减压缩后的测试用例集规模,但同时也会显著降低原有测试用例集的缺陷检测能力。本发明人经长期研究发现,软件在实际测试时,部分软件缺陷的触发与语句间的交互有关,本发明通过添加少量测试用例来额外满足对语句交互的覆盖并提出一种新颖测试用例集压缩方法,实践结果表明该方法可以有效提高压缩后的测试用例集缺陷检测能力,并且不需要大幅度增加压缩后的测试用例集规模。
本发明采用如下方法进行测试用例的选择:(1)将被测程序P进行代码插桩;(2)在插桩后的程序上执行原有测试用例集T中的每个测试用例,并记录每个测试用例的语句覆盖信息;(3)生成可覆盖的语句间交互集;(4)执行测试用例集压缩方法以确保对语句间交互的充分覆盖并最终生成压缩后的测试用例集。
当原有测试用例集规模较大时,为降低回归测试成本,传统方法仅考虑对单个语句的覆盖,但在分析软件的实际测试过程时发现:部分软件内在缺陷的触发与语句间的交互有关,本发明在满足对单个语句覆盖的前提下,通过添加少量测试用例来额外满足对语句交互的覆盖并提出一种测试用例集压缩方法,在C语言编程实现的代码上,运行该方法后发现:本发明可以有效提高压缩后的测试用例集缺陷检测能力,并且不需要大幅度增加压缩后的测试用例集规模。
相对于现有技术,本发明的优点在于:
本发明的技术方案用于从待测程序的测试用例集里选取测试用例子集,以进一步提高回归测试的效率,并使选取的测试用例具备足够高的错误检测能力。通过在现有技术的基础上记录每个测试用例的语句覆盖信息,生成可覆盖的语句间交互集,通过选择策略获取测试用例,了解语句交互之间的联系,在回归测试阶段有效降低测试用例数量并保持足够高的错误检测能力。
本发明通过语句分析对回归测试中的测试用例的数量和错误检测能力这两者进行了充分权衡,以一种全新的、更加动态的方式处理测试用例,通过测试用例所展现出的程序行为的内在联系来理解程序,使得测试用例的选择变得更加容易和自动化,从而可以更有效的使用这些测试用例进行回归测试,在现有技术的基础上进一步提高了测试用例选择的精确度,使发现错误的测试用例在选择出来的测试用例集中所占比例增大,与现有的回归测试技术相比,本发明从原始测试用例集选择出覆盖语句集和语句交互集合的测试用例构成压缩后测试用例集,选择出的测试用例数量减小,同时保持测试用例集本身对待测程序较高的错误检测能力,从而提高了回归测试的效率。
附图说明
下面结合附图及实施例对本发明作进一步描述:
图1是基于语句交互覆盖的测试用例集压缩方法的框架图;
图2是基于语句交互覆盖的测试用例集压缩方法总体流程图;
图3是基于语句和语句交互覆盖的第一选择策略S1的流程图;
图4是基于语句交互覆盖的第二选择策略S2的流程图。
具体实施方式
为了更详尽的表述上述发明的技术方案,以下本发明人列举出具体的实施例来说明技术效果;需要强调的是,这些实施例是用于说明本发明而不限于限制本发明的范围。
实施例
本实施例的基于语句交互覆盖的回归测试用例选择方法的总体流程图如图1所示,包含如下步骤:
(1)将被测程序P进行代码插桩。
(2)在插桩后的程序上执行原有测试用例集T中的每个测试用例,记录每个测试用例的语句覆盖信息并构造出测试用例-语句覆盖矩阵。假设T中包含m个测试用例,P中包含需要覆盖的n个语句,则该矩阵是一个m×n的矩阵且可表示如下:
其中若第i个测试用例覆盖第j个语句,则cij取值为1,否则cij取值为0。
(3)基于该矩阵,可以生成可覆盖的语句间交互集。其中语句k与语句j构成的语句交互是可覆盖的当且仅当存在测试用例i,使得cik和cij同时取值均为1。
(4)基于上述信息执行测试用例集压缩方法并最终生成压缩后的测试用例集。
通过图2可以对测试用例集压缩方法的工作流程进行简介。其输入是被测程序P、已有测试用例集T、可覆盖的语句集R和可覆盖的语句交互集I。首先将压缩后测试用例集Tmin初始化为空集。随后该方法在执行过程中主要分两个阶段:
在阶段1,该方法根据基于语句和语句交互覆盖的选择策略S1从T中选出一个测试用例t,随后从R中移除该测试用例覆盖的语句,从I中移除该测试用例覆盖的语句交互,从T中移除该测试用例,将该测试用例添加到Tmin。随后继续根据策略S1从T中选出下一个测试用例t,当R中所有语句均被覆盖到时,则终止该迭代过程。
在阶段2,若I中仍有需要覆盖的语句交互,则根据基于语句交互覆盖的选择策略S2从T中选出一个测试用例t,随后从I中移除该测试用例覆盖的语句交互,从T中移除该测试用例,并将该测试用例添加到Tmin中。随后继续根据策略S2从T中选出下一个测试用例t,当I中所有语句交互均被覆盖到时,则终止该迭代过程。当完成上述两个阶段后,返回压缩后测试用例集Tmin。
接着依次对上述方法流程中的选择策略S1和S2的流程进行分析。
其中选择策略S1综合考虑对集合R中的语句和集合I中的语句交互的覆盖,并希望能从中选出覆盖能力最强的测试用例,但该问题可在多项式时间内规约为经典的集合覆盖问题,从而证明该问题是NP-hard问题,所以本发明提出一种启发式方法,其方法流程图如图3所示。首先,该方法计算出集合R中每个语句的基数(即测试用例集T中覆盖该语句的测试用例数量)。然后从T中选出部分测试用例T1(minCard,即min{ci|ri∈R}),使得它们覆盖拥有最小基数({ri|ci=minCard∧ri∈R})的语句个数最多。如果集合T1中仅包含一个测试用例,则策略S1直接返回该测试用例。否则,当T1中包含多个测试用例时,则从T1中选择出部分测试用例T2,使得它们覆盖集合I中语句交互最多。如果集合T2中仅包含一个测试用例,则策略S1直接返回该测试用例。否则从T2中随机选择一个测试用例并返回该测试用例。
选择策略S2主要考虑对集合I中语句交互的覆盖,并希望能从中选出覆盖能力最强的测试用例,同样该问题可在多项式时间内规约为集合覆盖问题,从而证明该问题是NP-hard问题,所以本发明提出一种启发式方法,其流程图如图4所示。首先,该策略计算出集合I中每个语句交互的基数(即测试用例集T中覆盖该语句交互的测试用例数量)。然后从T中选出部分测试用例T1({pi|ci=minCard∧pi∈I}),使得它们覆盖拥有最小基数(minCard,即min{ci|pi∈I})的语句交互个数最多。如果集合T1中仅包含一个测试用例,则策略S2直接返回该测试用例。否则,当T1中包含多个测试用例时,则从T1中随机选择一个测试用例并返回该测试用例。
以下通过具体应用程序的回归测试进行验证:
本实施例的回归测试验证是通过一个手工构造的实例和真实程序来进行的。在表1所示的手工构造的简单实例中,假设有一个初始程序P,三个有缺陷的程序版本,且每个版本仅包含一个缺陷。例如缺陷版本1仅包含缺陷1,测试用例集T包含5个测试用例,且假设有5个语句需要被测试用例覆盖到。表1记录了每个测试用例的语句覆盖信息,以及在每个缺陷版本上的缺陷检测情况。例如,在表1中,测试用例1覆盖了语句1和语句3,并且可以检测到缺陷版本1。
表1一个简单实例
由于无法预测获知各个测试用例在缺陷版本上的缺陷检测能力。一般通过测试用例在程序P上的覆盖信息执行测试用例集压缩。若仅考虑对单个语句的覆盖,则可以选出测试用例1和测试用例2,通过表1不难看出,这两个测试用例可以覆盖所有语句。但若考虑语句交互,则仍有语句2和语句3构成的交互尚未被这两个测试用例覆盖到,通过选择测试用例3可以完成对该语句交互的覆盖。从该简单实例可看出,若仅考虑单个语句覆盖,压缩后的测试用例集仅能检测到2个缺陷版本,若考虑语句交互覆盖,则仅需添加1个测试用例,就可以检测出所有缺陷版本。虽然表1是一个虚拟实例,但申请人随后通过在一些真实程序上执行该方法来验证本发明的有效性。
申请人选择了一组C语言编写的程序进行验证。主要包括7个程序,这些程序的名称、代码行数、测试用例的总数,包含的缺陷版本数以及程序描述如表2所示。因为本发明本身存在随机因素,所以对每个程序均独立执行本发明1000次以获取更高的统计置信度。在每一次独立过程中,均从该程序对应的测试用例中选择部分测试用例来构造测试用例集,并将本发明应用于该测试用例集上。其测试用例集的构造过程描述如下:首先在区间0到0.5之间随机生成一个数并乘以该程序的代码行数,假设该值为n。随后从原有测试用例集中随机选择n个测试用例。最后评估这n个测试用例是否覆盖所有可执行语句,若未完全覆盖,则额外选择部分测试用例以保证完全覆盖。
表2实验程序特征描述
首先,申请人分析本发明的测试用例集压缩程度,并与传统仅考虑语句覆盖的测试用例集压缩方法HGS进行了对比。最终结果如表3所示。表3给出了压缩后的测试用例集规模的绝对值和相对值的均值。从表3中可以看出,本发明压缩后的测试用例集规模均大于HGS方法,这个结果符合预期,因为除了需要覆盖集合R中的所有语句,本发明还需要覆盖集合I中的所有语句交互。在一些实验对象中,例如schedule、schedule2、tcas和totinfo中,需要额外添加的测试用例数相对来说较少,仅需添加最少1个,最多4个。但在其他实验对象中,需要添加的测试用例数会稍多。但本发明的测试用例集的压缩比例仍较高,一般介于52.75%到79.02%之间。所以本发明仍可以有效压缩测试用例集规模。
表3测试用例集规模数据汇总
其次,申请人分析本发明的缺陷检测能力缩减程度,申请人额外引入两种方法来体现本发明的有效性。这两种方法返回的压缩后测试用例集规模与本发明返回的压缩后测试用例集规模保持一致。假设本发明返回的压缩后测试用例集规模为n,则第一种方法Random从原有测试用例集中随机选择n个测试用例。第二种方法HGSR先用HGS方法并返回测试用例集T’,假设T’中包含n’(n’<n)个测试用例,随后从(T—T’)中随机选择(n—n’)个测试用例。申请人统计出本发明的缺陷检测能力的绝对值和相对值的均值,并如表4所示。当压缩后的测试用例集规模相当时,本发明的缺陷检测能力均要优于Random法和HGSR法,平均下来,相对于Random法有28.06%的提高,相对于HGSR法有7.48%的提高。上述结果表明,通过关注语句交互覆盖,可以有效提高压缩后测试用例集的缺陷检测能力。
表4测试用例集缺陷检测能力数据汇总
上述实例只为说明本发明的技术构思及特点,其目的在于让熟悉此项技术的人是能够了解本发明的内容并据以实施,并不能以此限制本发明的保护范围。凡根据本发明精神实质所做的等效变换或修饰,都应涵盖在本发明的保护范围之内。
Claims (6)
1.一种基于语句交互覆盖的回归测试用例选择方法,其特征在于,所述方法包括如下步骤:
(1)对待测程序进行插桩,在插桩后的程序上执行用于测试被测程序的已有测试用例集中的每个测试用例,记录每个测试用例的语句覆盖信息并构造出测试用例-语句覆盖矩阵,确定需覆盖的语句集R;
(2)基于测试用例-语句覆盖矩阵生成可覆盖的语句间交互集I;
(3)根据可覆盖的语句间交互集I、需覆盖的语句集R和已有测试用例集,按照选择策略执行测试用例集压缩方法,并最终生成压缩后的测试用例集。
2.根据权利要求1所述的方法,其特征在于,所述方法步骤(3)中执行测试用例集压缩方法按照以下步骤进行:
1)构造压缩后的测试用例集,并设置压缩后测试用例集为空集;
2)按照第一选择策略S1从已有测试用例集中选择覆盖语句集R中相应的语句的测试用例,添加到压缩后的测试用例集中,并确定语句间交互集I中已经覆盖的语句交互;
3)按照第二选择策略S2从已有测试用例集中选择覆盖语句间交互集I中尚未覆盖的语句交互的测试用例,添加到压缩后的测试用例集中。
3.根据权利要求2所述的方法,其特征在于,所述方法步骤2)按照第一选择策略S1从已有测试用例集中选择覆盖需覆盖的语句集R中相应的语句的测试用例按照如下步骤进行:
A1)计算出需覆盖的语句集R中每个语句的基数,获取需覆盖的语句集R中语句的最小基数;所述基数为测试用例集中覆盖该语句的测试用例数量;
A2)从已有测试用例集中选择测试用例子集T1,使其中的测试用例覆盖拥有最小基数的语句个数最多;
A3)如果测试用例子集T1仅包含一个测试用例,则将该测试用例为被选定的测试用例;如果测试用例子集T1包含两个或两个以上的测试用例时,从测试用例子集T1中选择测试用例子集T2,使其中的测试用例覆盖语句间交互集I中语句交互最多;
A4)如果测试用例子集T2仅包含一个测试用例,则该测试用例为被选定的测试用例;如果测试用例子集T2包含两个或两个以上的测试用例时,从测试用例子集T2中随机选择一个测试用例作为被选定的测试用例。
4.根据权利要求2所述的方法,其特征在于,所述方法步骤3)按照第二选择策略S2从已有测试用例集中选择未同时覆盖需覆盖的语句集R中相应的语句和语句间交互集I的语句交互的测试用例按照如下步骤进行:
A1)计算出语句间交互集I中每个语句交互的基数,获取需覆盖的语句间交互集I中语句交互的最小基数;所述基数为测试用例集中覆盖该语句交互的测试用例数量;
A2)从已有测试用例集中选择测试用例子集T1’,使其中的测试用例覆盖拥有最小基数的语句交互个数最多;
A3)如果测试用例子集T1’仅包含一个测试用例,则将该测试用例为被选定的测试用例;如果测试用例子集T1’包含两个或两个以上的测试用例时,从测试用例子集T1’中随机选择一个测试用例作为被选定的测试用例。
5.根据权利要求2或4所述的方法,其特征在于,所述方法步骤3)中已有测试用例集为原始已有测试用例集中排除已添加到压缩后的测试用例集中测试用例的测试用例集合。
6.根据权利要求1所述的方法,其特征在于,所述方法步骤(1)中假设已有测试用例集为T,其中包含m个测试用例,待测程序中包含需要覆盖的n个语句,则测试用例-语句覆盖矩阵是一个m×n的矩阵,表示为:
其中若第i个测试用例覆盖第j个语句,则cij取值为1,否则cij取值为0;如果语句k与语句u构成的语句交互是可覆盖的,当且仅当存在测试用例q,使得cqk和cqu同时取值为1;其中i、j、n、k、u、q、m均是整数,且0<=i<=m;0<=j<=n;0<=k<=n;0<=u<=n;0<=q<=m。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201310643493.6A CN103617119B (zh) | 2013-12-03 | 2013-12-03 | 基于语句交互覆盖的回归测试用例选择方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201310643493.6A CN103617119B (zh) | 2013-12-03 | 2013-12-03 | 基于语句交互覆盖的回归测试用例选择方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN103617119A true CN103617119A (zh) | 2014-03-05 |
CN103617119B CN103617119B (zh) | 2016-05-11 |
Family
ID=50167822
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201310643493.6A Expired - Fee Related CN103617119B (zh) | 2013-12-03 | 2013-12-03 | 基于语句交互覆盖的回归测试用例选择方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN103617119B (zh) |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104915352A (zh) * | 2014-03-12 | 2015-09-16 | 阿里巴巴集团控股有限公司 | 一种验证MapReduce环境下处理数据正确性的方法和装置 |
CN105260534A (zh) * | 2015-10-10 | 2016-01-20 | 浪潮(北京)电子信息产业有限公司 | 用于超大规模芯片验证的回归测试用例维护方法及系统 |
CN109739746A (zh) * | 2018-12-12 | 2019-05-10 | 江苏师范大学 | 一种基于原语句占优分析的变异测试方法 |
US10331540B2 (en) | 2016-03-30 | 2019-06-25 | International Business Machines Corporation | Identifying false positive automated tests |
CN113342692A (zh) * | 2021-07-05 | 2021-09-03 | 卫宁健康科技集团股份有限公司 | 测试用例自动生成方法、装置、电子设备及存储介质 |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2008074529A2 (en) * | 2006-12-21 | 2008-06-26 | International Business Machines Corporation | Method, system and computer program for performing regression tests |
CN101464831A (zh) * | 2009-01-09 | 2009-06-24 | 西安邮电学院 | 一种测试用例集缩减技术 |
CN101866316A (zh) * | 2010-06-23 | 2010-10-20 | 南京大学 | 一种基于相对冗余测试集约简的软件缺陷定位方法 |
CN101908017A (zh) * | 2010-06-01 | 2010-12-08 | 南京大学 | 一种基于部分多重覆盖的回归测试用例筛选方法 |
CN102364449A (zh) * | 2011-10-24 | 2012-02-29 | 中兴通讯股份有限公司 | 一种最小测试用例集的生成方法及系统 |
US20130111267A1 (en) * | 2011-11-01 | 2013-05-02 | International Business Machines Corporation | Optimizing regression testing based on code coverage analysis |
-
2013
- 2013-12-03 CN CN201310643493.6A patent/CN103617119B/zh not_active Expired - Fee Related
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2008074529A2 (en) * | 2006-12-21 | 2008-06-26 | International Business Machines Corporation | Method, system and computer program for performing regression tests |
CN101464831A (zh) * | 2009-01-09 | 2009-06-24 | 西安邮电学院 | 一种测试用例集缩减技术 |
CN101908017A (zh) * | 2010-06-01 | 2010-12-08 | 南京大学 | 一种基于部分多重覆盖的回归测试用例筛选方法 |
CN101866316A (zh) * | 2010-06-23 | 2010-10-20 | 南京大学 | 一种基于相对冗余测试集约简的软件缺陷定位方法 |
CN102364449A (zh) * | 2011-10-24 | 2012-02-29 | 中兴通讯股份有限公司 | 一种最小测试用例集的生成方法及系统 |
US20130111267A1 (en) * | 2011-11-01 | 2013-05-02 | International Business Machines Corporation | Optimizing regression testing based on code coverage analysis |
Non-Patent Citations (2)
Title |
---|
陈翔等: "《回归测试中测试用例集扩充技术研究进展》", 《计算机科学》 * |
陈翔等: "《回归测试用例选择技术研究综述》", 《计算机科学》 * |
Cited By (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104915352A (zh) * | 2014-03-12 | 2015-09-16 | 阿里巴巴集团控股有限公司 | 一种验证MapReduce环境下处理数据正确性的方法和装置 |
CN104915352B (zh) * | 2014-03-12 | 2018-10-02 | 阿里巴巴集团控股有限公司 | 一种验证MapReduce环境下处理数据正确性的方法和装置 |
CN105260534A (zh) * | 2015-10-10 | 2016-01-20 | 浪潮(北京)电子信息产业有限公司 | 用于超大规模芯片验证的回归测试用例维护方法及系统 |
CN105260534B (zh) * | 2015-10-10 | 2019-06-18 | 浪潮(北京)电子信息产业有限公司 | 用于超大规模芯片验证的回归测试用例维护方法及系统 |
US10331540B2 (en) | 2016-03-30 | 2019-06-25 | International Business Machines Corporation | Identifying false positive automated tests |
CN109739746A (zh) * | 2018-12-12 | 2019-05-10 | 江苏师范大学 | 一种基于原语句占优分析的变异测试方法 |
CN113342692A (zh) * | 2021-07-05 | 2021-09-03 | 卫宁健康科技集团股份有限公司 | 测试用例自动生成方法、装置、电子设备及存储介质 |
CN113342692B (zh) * | 2021-07-05 | 2024-05-03 | 卫宁健康科技集团股份有限公司 | 测试用例自动生成方法、装置、电子设备及存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CN103617119B (zh) | 2016-05-11 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN103617119A (zh) | 基于语句交互覆盖的回归测试用例选择方法 | |
Hermadi et al. | Dynamic stopping criteria for search-based test data generation for path testing | |
CN110348615B (zh) | 基于蚁群优化支持向量机的电缆线路故障概率预测方法 | |
CN102521131B (zh) | 一种基于动态基本块的缺陷定位测试用例约简方法 | |
CN103559122A (zh) | 基于程序行为切片的测试案例约减方法 | |
CN110399286B (zh) | 一种基于独立路径的测试数据自动生成方法 | |
CN108021509B (zh) | 基于程序行为网络聚合的测试用例动态排序方法 | |
CN102968369B (zh) | 一种动态断点的自动生成方法及系统 | |
Mohi-Aldeen et al. | Application of Negative Selection Algorithm (NSA) for test data generation of path testing | |
CN104318110B (zh) | 一种提高大型复杂系统风险设计及维修效率的方法 | |
CN111782532B (zh) | 一种基于网络异常节点分析的软件故障定位方法及系统 | |
CN115272776B (zh) | 基于双路卷积与双注意的高光谱图像分类方法及存储介质 | |
CN101634966B (zh) | 一种对软件过程进行自动化故障模式及影响分析的方法 | |
CN103353895A (zh) | 一种配电网线损数据的预处理方法 | |
Khari et al. | A novel approach for software test data generation using cuckoo algorithm | |
CN104573864A (zh) | 一种基于自回归预测的数据分析报警方法 | |
CN116992362A (zh) | 一种基于夏普利值的变压器故障表征特征量筛选方法和装置 | |
US8997064B2 (en) | Symbolic testing of software using concrete software execution | |
CN109815108A (zh) | 一种基于权重的组合测试用例集优先化排序方法及系统 | |
Duppati et al. | Effects of CO2, renewables and fuel prices on the economic growth in New Zealand | |
Taesiri et al. | A video game testing method utilizing deep learning | |
CN110502422A (zh) | 一种自动测试方法、测试装置和具有存储功能的装置 | |
CN110554952A (zh) | 一种基于搜索的分层回归测试数据生成方法 | |
Jiawen et al. | Coverage-directed stimulus generation using a genetic algorithm | |
Zhao et al. | A New Method to Detect Useless Service Failure Model in SPN. |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
C10 | Entry into 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: 20160511 Termination date: 20161203 |