CN105446885A - 一种基于需求的回归测试用例优先级排序技术 - Google Patents

一种基于需求的回归测试用例优先级排序技术 Download PDF

Info

Publication number
CN105446885A
CN105446885A CN201511034598.7A CN201511034598A CN105446885A CN 105446885 A CN105446885 A CN 105446885A CN 201511034598 A CN201511034598 A CN 201511034598A CN 105446885 A CN105446885 A CN 105446885A
Authority
CN
China
Prior art keywords
test case
testing requirement
testing
demand
state
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
Application number
CN201511034598.7A
Other languages
English (en)
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.)
Southwest University
Original Assignee
Southwest University
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 Southwest University filed Critical Southwest University
Priority to CN201511034598.7A priority Critical patent/CN105446885A/zh
Publication of CN105446885A publication Critical patent/CN105446885A/zh
Pending legal-status Critical Current

Links

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

Abstract

本发明涉及一种基于需求的回归测试用例优先级排序技术,其包括:获取软件所有测试需求与测试用例并进行状态初始化;建立测试需求与测试用例之间的对应关系以及测试需求之间的依赖关系;对需求因素排列主次关系;获取各测试需求的需求因素优先级值;计算各测试需求的优先级值;选择一个测试需求;从选中的测试需求对应的所有测试用例中依照规则选择一个测试用例并执行;修改选中的测试需求与选中的测试用例的状态;根据测试用例执行结果进行相关测试用例状态修改;根据规则重置特定测试需求与测试用例的状态;判断所有测试用例是否已完成排序。本发明具有很灵活的针对性,可以尽快达到较高的需求覆盖率,避免对测试需求的集中测试。

Description

一种基于需求的回归测试用例优先级排序技术
技术领域
本发明属于回归测试领域,具体涉及一种基于需求的回归测试用例优先级排序技术。
背景技术
回归测试是软件测试过程中一个较为频繁的活动。当首次完成对软件的一轮测试,并将发现的问题修复后,需要重新对软件进行测试,来验证软件修复的正确性,此过程称为回归测试。回归测试目的是保证对软件的各种修改不会引入其它不可预测的错误。相关文献表明大约有30%的错误由回归测试发现。近年来随着软件技术的发展、软件规模的增大,测试用例数量不断增加,而时间、人力、资金等成本是有限的,在有限资源下必然无法执行全部测试用例,唯有从庞大的测试用例库中挑选部分最有价值的测试用例优先执行,以保证在有限资源下尽可能多地发现错误达到较高的软件质量。因此,设计高效的测试用例选取技术对提高回归测试发现错误的速率,具有非常大的研究价值。
目前已存在多种回归测试用例选取技术,主要可以分为3大类:测试用例选择、测试用例最小化和测试用例优先级排序。测试用例选择技术主要从源代码和模型两方面从已有测试用例集中选择出所有可检测到代码修改的测试用例。测试用例最小化技术主要利用启发式搜索算法约简测试用例集。然而,这两种技术均忽略了被舍弃的测试用例也可能发现程序中的错误,甚至是比较严重错误等情况。测试用例优先级排序技术采用某种排序准则,赋予每个测试用例一个优先级,引导测试用例按优先级从高至低排序并依次执行。与前两种技术相比,测试用例优先级排序技术在不舍弃测试用例的前提下,尽可能选择发现错误的测试用例优先执行,发现错误的可能性略高一筹。
基于软件开发流程,对测试用例优先级排序技术的研究大部分集中于模型、源代码和需求这3个方面。基于模型的技术分析系统模型,将测试用例与模型相对应,根据系统模型的优先级对测试用例排序,典型的有Korel等人提出的选择性排序法以及模型依赖关系排序法。基于源代码的技术关注测试用例对代码的覆盖情况并设置权重值,利用相应算法根据权重值对测试用例排序,典型的有Rothermel等人提出的Total策略和Additional策略。基于需求的技术运用测试需求与测试用例之间的相关影响因素对测试用例排序,典型的有Krishnamoorthi等人提出的需求六因素技术。实际应用中,可根据所获得的文档或侧重点不同选择不同的测试用例优先级排序技术。例如,当客户没有源代码只有可执行文件时,可以从需求出发,根据需求规则说明书,通过分析软件需求点和功能点设计测试用例并指导排序。
本发明聚焦基于需求的测试用例优先级排序技术。现有的该类技术主要通过将测试用例与测试需求建立映射关系,然后为测试需求设定优先级对测试用例进行排序。经典的量化测试需求优先级的方式有:Srikanth等人提出由用户指定需求优先级与需求实现复杂度等因素;Krishnamoorthi等人提出需求六因素技术从与需求相关的6个因素:需求完整性程度、需求实现复杂度、缺陷影响程度、需求变更程度、用户自定义需求优先级和需求可跟踪性程度进行量化;仲晓芳等人提出一个成本收益模型,加入排序消耗的成本和收益信息:李红红等人提出基于优先数的排序算法,考虑代码注入、存储收集历史信息等成本。
然而,现有基于需求的测试用例优先级排序技术主要存在如下3种缺点:
(1)所考虑的与需求相关的因素在理论上有存在的道理,但在实际测试环境下并不常用,增加了计算复杂度;
(2)在量化需求优先级时,通过加权平均的计算方式具有很大局限性,不能突显特定环境下某个需求的特点:
(3)没有考虑需求之间的依赖关系,例如存在两个需求A和B,需求A为登录操作,需求B为修改用户信息,需求B的操作必须在需求A操作正确完成的情况下才能执行,这种情况必须将需求A在需求B之前测试。
发明内容
针对上述问题,本发明提出了一种构思合理、步骤简单,能从不同角度反应测试需求,具有很灵活的针对性,可以尽快达到较高的需求覆盖率,避免对测试需求的集中测试,与实际测试环境结合更紧密的基于需求的测试用例优先级排序技术。
本发明的技术方案如下:
上述的基于需求的回归测试用例优先级排序技术,具体包括以下步骤:(1)获取软件所有测试需求与测试用例并进行状态初始化;(2)建立测试需求与测试用例之间的对应关系以及测试需求之间的依赖关系;(3)对需求因素排列主次关系;(4)获取各测试需求的需求因素优先级值;(5)计算各测试需求的优先级值;(6)根据Additional策略及测试需求间逻辑关系选择一个测试需求;(7)从选中的测试需求对应的所有测试用例中依照规则选择一个测试用例并执行;(8)修改选中的测试需求与选中的测试用例的状态;(9)根据测试用例执行结果进行相关测试用例状态修改;(10)根据规则重置特定测试需求与测试用例的状态;(11)判断所有测试用例是否已完成排序。
所述基于需求的回归测试用例优先级排序技术,其中:所述步骤(1)具体是将所有测试需求的状态初始化为未覆盖,将所有测试用例的状态初始化为未使用。
所述基于需求的回归测试用例优先级排序技术,其中:所述步骤(3)具体是由测试人员根据软件特点和实际测试效果设定需求因素的主次关系,所述步骤(3)具体包括4个需求因素,即:①需求核心程度,表示需求是否对应软件的核心功能以及核心程度;②需求易错程度,表示需求是否存在潜在错误以及错误程度;③缺陷影响程度,表示需求对应的功能在之前测试时是否被发现缺陷以及缺陷影响程度;④需求变更程度,表示软件在实际开发完成后是否因需求发生改变或未被满足而修改程序以及修改程度。
所述基于需求的回归测试用例优先级排序技术,其中:所述步骤(4)是根据所述步骤(3)的4个需求因素,由用户和开发人员共同设定各测试需求的需求核心程度优先级值,由测试人员设定各测试需求的需求易错程度优先级值,测试人员根据测试需求对应的测试用例发现缺陷的严重程度值计算各测试需求的缺陷影响程度优先级值,根据开发人员提供的代码修改情况设定各测试需求的需求变更程度优先级值。
所述基于需求的回归测试用例优先级排序技术,其中:所述步骤(5)测试需求的优先级值是根据对应的所述4个需求因素的主次关系及优先级值计算。
所述基于需求的回归测试用例优先级排序技术,其中:所述步骤(6)具体是先根据Additional策略优先选择一个优先级值最高、状态为未覆盖的测试需求,同时要求该测试需求对应含有状态为未使用的测试用例,如果满足条件的测试需求不止一个,则随机从中选择一个;如果选择的测试需求存在依赖的测试需求,则优先选择其依赖的测试需求,如果测试需求的依赖关系不止一个,则随机从其依赖的测试需求中选择一个。
所述基于需求的回归测试用例优先级排序技术,其中,所述步骤(7)选择测试用例的具体规则为:如果该测试需求的缺陷影响程度优先级值大于0,则选择该测试需求对应的所有测试用例中发现缺陷的严重程度值最大且未使用的测试用例,如果测试用例发现缺陷的严重程度值最大且未使用的测试用例不止一个,则随机从中选择一个;如果该测试需求的缺陷影响程度优先级值为0且变更程度优先级值大于0,则在该测试需求对应的所有测试用例中优先选择新增或修改且状态为未使用的测试用例,如果新增或修改且状态为未使用的测试用例不止一个,同样采用随机策略从中选择。
所述基于需求的回归测试用例优先级排序技术,其中:所述步骤(8)是将选中测试需求的状态置为已覆盖,将选中测试用例的状态置为已使用;所述步骤(9)中,如果执行的测试用例发现程序缺陷,则将此次选中的测试需求下状态为未使用的测试用例修改为不可使用。
所述基于需求的回归测试用例优先级排序技术,其中,所述步骤(10)的规则具体为:如果所有测试需求的状态均为已覆盖或状态为未覆盖的测试需求下不存在状态为未使用的测试用例,则将所有测试需求的状态重置为未覆盖;另外,如果测试用例的状态含有已使用和不可使用两种,则将所有状态为不可使用的测试用例置为未使用。
所述基于需求的回归测试用例优先级排序技术,其中,所述步骤(11)中,如果所有测试用例已完成排序,则依照选中并执行的测试用例顺序输出测试用例序列,流程结束;否则进入所述步骤(6)继续进行迭代。
有益效果:
本发明基于需求的回归测试用例优先级排序技术通过设置4个与需求相关的因素并优化需求优先级的计算方式,在排序过程中结合需求依赖关系、Additional策略与动态调整策略选择测试用例,其相比现有技术具有以下优点和特点:
(1)现有技术设定的需求因素之间存在相关关系导致冗余,并且存在实际测试环境不常用的需求因素,导致排序过程中计算复杂度的增加与资源消耗;而本发明通过实际测试环境验证,整合相关需求因素,舍弃不常用需求因素,提炼出4个需求因素,4个需求因素相互独立且从不同角度反应测试需求的特点;
(2)现有技术在量化测试需求优先级时,通过将需求因素加权平均的计算方式具有很大局限性,不能突显特定环境下某个测试需求的特点,本发明提出通过设定测试需求主次关系计算优先级值的方式具有很灵活的针对性;
(3)本发明引入Additional策略的思想优先选择未被测试的需求对应的测试用例,可以尽快达到较高的需求覆盖率,避免对测试需求的集中测试;
(4)此外,本发明还考虑需求间的依赖关系以及根据测试用例执行结果动态调整剩余测试用例执行顺序,与实际测试环境结合更紧密。
附图说明
图1为本发明基于需求的回归测试用例优先级排序技术的流程图;
图2(a)~(d)为本发明基于需求的回归测试用例优先级排序技术与现有技术对软件测试用例排序结果的错误检测情况对比示图;
图3是采用评价指标缺陷检测的加权平均值对比本发明基于需求的回归测试用例优先级排序技术与现有技术对软件测试用例排序效果的示图。
具体实施方式
如图1所示,本发明基于需求的回归测试用例优先级排序技术,具体包括以下步骤:
S101、获取软件所有测试需求与测试用例并进行状态初始化。
具体地,将所有测试需求的状态初始化为未覆盖,将所有测试用例的状态初始化为未使用。
S102、建立测试需求与测试用例之间的对应关系以及测试需求之间的依赖关系。
一般情况下,一个测试用例仅能满足一个测试需求,一个测试需求需要多个测试用例进行测试;测试需求A依赖测试需求B是指A必须在B正确执行的情况下才能执行,遇到这种情况,需先测试B,即使A的优先级高于B。
S103、对需求因素排列主次关系。
由测试人员根据软件特点和实际测试效果设定需求因素的主次关系,对本发明设计的4个需求因素具体介绍如下:
①需求核心程度,表示需求是否对应软件的核心功能以及核心程度。任何软件必然存在一个或多个核心功能部分,核心功能在整个软件功能中占有绝对重要地位,核心功能的实现复杂度通常高于其他功能的实现复杂度,所以该需求因素也反映了一个需求的实现复杂度。需求核心程度的级别由用户和开发人员共同判定,使用符号CDR(CoreDegreeofRequirement)表示,CDRi表示第i个测试需求的需求核心程度优先级值,取值范围为0到9。
②需求易错程度,表示需求是否存在潜在错误以及错误程度。软件测试人员随工作时间增长与经验积累,必然会形成一套自己独有的判断某些需求可能产生错误的经验知识,充分利用这些经验知识是设计该需求因素的原因。它的级别由测试人员判定,使用符号FR(Fallibility0fRequirement)表示,FRi表示第i个测试需求的易错程度优先级值,取值范围为0到9。
③缺陷影响程度,表示需求对应的功能在之前测试时是否被发现缺陷以及缺陷影响程度。因为缺陷是由测试用例发现的,所以测试需求的缺陷影响程度根据测试用例发现缺陷的严重程度计算。回归测试需尤其关注软件的修复情况,对已经发现缺陷的测试用例需优先执行,因此设计该需求因素。定义符号FIT(FaultImpactofTestcases)表示测试用例发现缺陷的严重程度,表示第i个测试需求对应的第j个测试用例发现缺陷的严重程度值,取值从0至4分别表示无缺陷、微小缺陷、一般缺陷、严重缺陷以及致命缺陷,根据现有通用标准进行归类。定义符号FIR(FaultImpactofRequirement)表示需求因素的缺陷影响程度,FIRi表示第i个需求的缺陷影响程度优先级值,计算方法见如下公式:
FIR i = 1 4 M a x { FIT 1 i , FIT 2 i , ... , FIT t i i } × 9 - - - ( 1 )
式(1)中ti表示第i个测试需求对应的测试用例总数。FIR取值范围为0到9。
④需求变更程度,表示软件在实际开发完成后是否因需求发生改变或未被满足而修改程序以及修改程度。程序代码的修改容易引入潜在错误,因此设计该需求因素。需求变更程度用符号CR(ChangesinRequirement)表示,CRi表示第i个测试需求的变更程度优先级值,计算方法见如下公式:
CRi=(Ni/M)×9(2)
式(2)中,Ni表示第i个测试需求的变更次数,M表示所有测试需求的最大变更次数。CR取值范围为0到9。
S104、获取各测试需求的需求因素优先级值。
根据步骤S103介绍的4个需求因素,由用户和开发人员共同设定各测试需求的需求核心程度优先级值CDR,由测试人员设定各测试需求的需求易错程度优先级值FR,测试人员根据测试需求对应的测试用例发现缺陷的严重程度值FIT计算各测试需求的缺陷影响程度优先级值FIR,根据开发人员提供的代码修改情况设定各测试需求的需求变更程度优先级值CR。
S105、计算各测试需求的优先级值。
测试需求的优先级值根据对应4个因素的主次关系及优先级值计算,使用符号RPV(RequirementPriorityValue)表示,RPVi表示第i个测试需求的优先级值。假设步骤S104确定的第i个测试需求的4个因素的主次关系是:CDRi>FIRi>FRi>CRi,则RPVi计算公式为:
RPVi=CDRi×104-1+FTRi×104-2+FRi×104-3+CRi×104-4(3)。
S106、根据Additional策略及测试需求间逻辑关系选择一个测试需求。
具体地,首先根据Additional策略优先选择一个优先级值最高、状态为未覆盖的测试需求,同时要求该测试需求对应含有状态为未使用的测试用例,如果满足条件的测试需求不止一个,则随机从中选择一个;如果选择的测试需求存在依赖的测试需求,则优先选择其依赖的测试需求,如果测试需求的依赖关系不止一个,则随机从其依赖的测试需求中选择一个。
S107、从选中的测试需求对应的所有测试用例中依照规则选择一个测试用例并执行。
具体选择测试用例的规则为:如果该测试需求的缺陷影响程度优先级值FIR大于0,则选择该测试需求对应的所有测试用例中发现缺陷的严重程度值FIT最大且未使用的测试用例,如果测试用例发现缺陷的严重程度值FIT最大且未使用的测试用例不止一个,则随机从中选择一个;如果该测试需求的缺陷影响程度优先级值FIR为0且变更程度优先级值CR大于0,则在该测试需求对应的所有测试用例中优先选择新增或修改且状态为未使用的测试用例,如果新增或修改且状态为未使用的测试用例不止一个,同样采用随机策略从中选择。
S108、修改选中的测试需求与选中的测试用例的状态。
将选中测试需求的状态置为已覆盖,将选中测试用例的状态置为已使用。
S109、根据测试用例执行结果进行相关测试用例状态修改。
如果执行的测试用例发现程序缺陷,则将此次选中的测试需求下状态为未使用的测试用例修改为不可使用。
S110、根据规则重置特定测试需求与测试用例的状态。
具体规则为:如果所有测试需求的状态均为已覆盖或状态为未覆盖的测试需求下不存在状态为未使用的测试用例,则将所有测试需求的状态重置为未覆盖。另外,如果测试用例的状态含有已使用和不可使用两种,则将所有状态为不可使用的测试用例置为未使用。
S111、判断所有测试用例是否已完成排序。
如果所有测试用例已完成排序,则依照选中并执行的测试用例顺序输出测试用例序列,流程结束;否则进入步骤S106继续进行迭代。
本发明选用重庆市软件评测中心的一个软件评测项目辅助管理系统v1.2作为测试对象,该系统包括测试管理、审计管理和安全管理三大主要功能。本发明重点关注功能性需求,对于易用性与界面等非功能性需求不予关注。分析该软件的需求规格说明书,共提取了35个功能项,对应168个测试需求。从等价类划分、边界值和因果图等角度共设计了332个测试用例对测试需求进行充分测试。
分别采用本发明技术(为方便陈述以下称为基于Additional的PORT_4技术)、随机技术以及Krishnamoorthi等人提出的需求六因素技术(简称PORT_6技术)对测试用例排序,每种技术在程序中分别执行10次。
根据测试用例序列执行结果画出测试用例执行百分比与错误检测百分比的折线图,如图2所示,其中横坐标表示检测出错误的百分比,纵坐标表示执行的测试用例百分比。图2(a)、2(b)和2(c)依次对应随机技术、PORT_6技术和基于Additional的PORT_4技术对测试用例排序结果的错误检测情况,其中折线A到J表示分别运行10次的结果,折线Avg在各图中均加粗处理,表示10次测试用例排序结果的平均错误检测情况。为直观对比3种技术的错误检测情况,将图2(a)、2(b)和2(c)三图中的折线Avg提取至图2(d)中,分别对应折线Avg_a、Avg_b、Avg_c。图2(d)显示基于Additional的PORT_4技术发现错误速率明显优于PORT_6技术和随机技术,例如,基于Additional的PORT_4技术只需要执行不到60%的测试用例即可发现程序中所有错误,而PORT_6技术和随机技术达到相同效果需执行超过95%的测试用例。
图3利用评价指标缺陷检测的加权平均值即APFD(AveragePercentageofFaultDetection)比较3种技术的排序结果。其中评价指标APFD由Elbaum等人提出,具体含义为:计算给定的测试序列在测试过程中检测到错误的平均累计值的比例。APFD的值越高,表示对应的测试用例序列发现缺陷的速度越快。假设给定一个测试用例集T的执行序列T′,其中T包含n个测试用例,F包含m个被测试用例集合T发现的错误的集合,TFi表示第一个能够检测到第i个错误的测试用例在该执行序列T′中所处的位置,则执行序列T′的APFD计算公式如下:
A P F D = 1 - TF 1 + TF 2 + ... + TF m n m + 1 2 n - - - ( 4 ) .
图3显示基于Additional的PORT_4技术与PORT_6技术的APFD的最低值远高于随机技术的APFD的最大值,说明基于Additional的PORT_4技术与PORT_6技术明显优于随机技术。而基于Additional的PORT_4技术的APFD的平均值高于PORT_6技术的APFD的最大值。因此综上,本发明比现有技术具有较快的错误检测速率。
本发明构思合理、步骤简单,通过设置4个与需求相关的因素并优化需求优先级的计算方式,在排序过程中结合需求依赖关系、Additional策略与动态调整策略选择测试用例,能从不同角度反应测试需求,具有很灵活的针对性,可以尽快达到较高的需求覆盖率,避免对测试需求的集中测试,与实际测试环境结合更紧密。

Claims (10)

1.一种基于需求的回归测试用倒优先级排序技术,其特征在于,具体包括以下步骤:
(1)获取软件所有测试需求与测试用例并进行状态初始化;
(2)建立测试需求与测试用例之间的对应关系以及测试需求之间的依赖关系;
(3)对需求因素排列主次关系;
(4)获取各测试需求的需求因素优先级值;
(5)计算各测试需求的优先级值;
(6)根据Additional策略及测试需求间逻辑关系选择一个测试需求;
(7)从选中的测试需求对应的所有测试用倒中依照规则选择一个测试用例并执行;
(8)修改选中的测试需求与选中的测试用例的状态;
(9)根据测试用例执行结果进行相关测试用例状态修改;
(10)根据规则重置特定测试需求与测试用例的状态;
(11)判断所有测试用例是否已完成排序。
2.如权利要求1所述的基于需求的回归测试用例优先级排序技术,其特征在于:所述步骤(1)具体是将所有测试需求的状态初始化为未覆盖,将所有测试用例的状态初始化为未使用。
3.如权利要求1所述的基于需求的回归测试用例优先级排序技术,其特征在于:所述步骤(3)其体是由测试人员根据软件特点和实际测试效果设定需求因素的主次关系,所述步骤(3)具体包括4个需求因素,即:
①需求核心程度,表示需求是否对应软件的核心功能以及核心程度;
②需求易错程度,表示需求是否存在潜在错误以及错误程度;
③缺陷影响程度,表示需求对应的功能在之前测试时是否被发现缺陷以及缺陷影响程度;
④需求变更程度,表示软件在实际开发完成后是否因需求发生改变或未被满足而修改程序以及修改程度。
4.如权利要求3所述的基于需求的回归测试用例优先级排序技术,其特征在于:所述步骤(4)是根据所述步骤(3)的4个需求因素,由用户和开发人员共同设定各测试需求的需求核心程度优先级值,由测试人员设定各测试需求的需求易错程度优先级值,测试人员根据测试需求对应的测试用例发现缺陷的严重程度值计算各测试需求的缺陷影响程度优先级值,根据开发人员提供的代码修改情况设定各测试需求的需求变更程度优先级值。
5.如权利要求4所述的基于需求的回归测试用例优先级排序技术,其特征在于:所述步骤(5)测试需求的优先级值是根据对应的所述4个需求因素的主次关系及优先级值计算。
6.如权利要求1所述的基于需求的回归测试用例优先级排序技术,其特征在于:所述步骤(6)具体是先根据Additional策略优先选择一个优先级值最高、状态为未覆盖的测试需求,同时要求该测试需求对应含有状态为未使用的测试用例,如果满足条件的测试需求不止一个,则随机从中选择一个;如果选择的测试需求存在依赖的测试需求,则优先选择其依赖的测试需求,如果测试需求的依赖关系不止一个,则随机从其依赖的测试需求中选择一个。
7.如权利要求1所述的基于需求的回归测试用例优先级排序技术,其特征在于,所述步骤(7)选择测试用例的具体规则为:如果该测试需求的缺陷影响程度优先级值大于0,则选择该测试需求对应的所有测试用例中发现缺陷的严重程度值最大且未使用的测试用例,如果测试用例发现缺陷的严重程度值最大且未使用的测试用例不止一个,则随机从中选择一个;如果该测试需求的缺陷影响程度优先级值为0且变更程度优先级值大手0,则在该测试需求对应的所有测试用例中优先选择新增或修改且状态为未使用的测试用例,如果新增或修改且状态为未使用的测试用例不止一个,同样采用随机策略从中选择。
8.如权利要求1所述的基于需求的回归测试用例优先级排序技术,其特征在于:所述步骤(8)是将选中测试需求的状态置为已覆盖,将选中测试用例的状态置为已使用;
所述步骤(9)中,如果执行的测试用例发现程序缺陷,则将此次选中的测试需求下状态为未使用的测试用例修改为不可使用。
9.如权利要求1所述的基于需求的回归测试用例优先级排序技术,其特征在于,所述步骤(10)的规则具体为:如果所有测试需求的状态均为已覆盖或状态为未覆盖的测试需求下不存在状态为未使用的测试用例,则将所有测试需求的状态重置为未覆盖;另外,如果测试用例的状态含有已使用和不可使用两种,则将所有状态为不可使用的测试用例置为未使用。
10.如权利要求1或6所述的基于需求的回归测试用例优先级排序技术,其特征在于,所述步骤(11)中,如果所有测试用例已完成排序,则依照选中并执行的测试用例顺序输出测试用例序列,流程结束;否则进入所述步骤(6)继续进行迭代。
CN201511034598.7A 2015-12-28 2015-12-28 一种基于需求的回归测试用例优先级排序技术 Pending CN105446885A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201511034598.7A CN105446885A (zh) 2015-12-28 2015-12-28 一种基于需求的回归测试用例优先级排序技术

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201511034598.7A CN105446885A (zh) 2015-12-28 2015-12-28 一种基于需求的回归测试用例优先级排序技术

Publications (1)

Publication Number Publication Date
CN105446885A true CN105446885A (zh) 2016-03-30

Family

ID=55557114

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201511034598.7A Pending CN105446885A (zh) 2015-12-28 2015-12-28 一种基于需求的回归测试用例优先级排序技术

Country Status (1)

Country Link
CN (1) CN105446885A (zh)

Cited By (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105975397A (zh) * 2016-07-18 2016-09-28 浪潮(北京)电子信息产业有限公司 一种基于TestNG的集成测试方法及系统
CN106776351A (zh) * 2017-03-09 2017-05-31 浙江理工大学 一种基于One‑test‑at‑a‑time策略的组合测试用例优先级排序方法
CN106897217A (zh) * 2017-02-13 2017-06-27 北京趣拿软件科技有限公司 测试方法和测试装置
CN107391376A (zh) * 2017-07-26 2017-11-24 成都科来软件有限公司 一种回归测试方法
CN107544905A (zh) * 2017-08-22 2018-01-05 中国农业银行股份有限公司 回归测试用例集的优化方法和系统
CN107861873A (zh) * 2017-11-03 2018-03-30 西安理工大学 基于两属性分级调整的测试用例优先级调整方法
CN108287785A (zh) * 2017-01-09 2018-07-17 富士通株式会社 测试例排序方法和设备
CN108694123A (zh) * 2018-05-14 2018-10-23 中国平安人寿保险股份有限公司 一种回归测试方法、计算机可读存储介质及终端设备
CN109344048A (zh) * 2018-08-17 2019-02-15 中国平安人寿保险股份有限公司 一种测试方法、存储介质和服务器
CN109669861A (zh) * 2018-11-30 2019-04-23 北京百卓网络技术有限公司 一种基于用户预期管理的测试方法及装置
CN110134588A (zh) * 2019-04-16 2019-08-16 江苏大学 一种基于代码和组合覆盖的测试用例优先级排序方法及测试系统
CN110688309A (zh) * 2019-09-20 2020-01-14 中国人民解放军63921部队 基于需求的通用型软件测试用例序列定量评价方法
CN110825621A (zh) * 2019-10-16 2020-02-21 四川大学 基于动态风险的回归测试用例优先级计算方法
CN110825620A (zh) * 2019-10-16 2020-02-21 四川大学 回归测试中测试用例优先级计算方法
CN111427772A (zh) * 2020-03-05 2020-07-17 广东睿江云计算股份有限公司 一种多维度的测试用例优先级排序方法
CN111858341A (zh) * 2020-07-23 2020-10-30 深圳慕智科技有限公司 一种基于神经元覆盖的测试数据度量方法
CN115422095A (zh) * 2022-11-07 2022-12-02 易方信息科技股份有限公司 一种回归测试用例推荐方法、装置、设备及介质

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
唐海鹏,丁晓明: "基于AdditionalUL策略的回归测试用例优先级排序", 《西南大学学报》 *
唐海鹏: "基于Additional策略回归测试用例优先级排序优化研究", 《中国优秀硕士学位论文全文数据库信息科技辑》 *

Cited By (22)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105975397A (zh) * 2016-07-18 2016-09-28 浪潮(北京)电子信息产业有限公司 一种基于TestNG的集成测试方法及系统
CN108287785A (zh) * 2017-01-09 2018-07-17 富士通株式会社 测试例排序方法和设备
CN108287785B (zh) * 2017-01-09 2021-06-22 富士通株式会社 测试例排序方法和设备
CN106897217A (zh) * 2017-02-13 2017-06-27 北京趣拿软件科技有限公司 测试方法和测试装置
CN106776351A (zh) * 2017-03-09 2017-05-31 浙江理工大学 一种基于One‑test‑at‑a‑time策略的组合测试用例优先级排序方法
CN106776351B (zh) * 2017-03-09 2019-08-16 浙江理工大学 一种基于One-test-at-a-time策略的组合测试用例优先级排序方法
CN107391376A (zh) * 2017-07-26 2017-11-24 成都科来软件有限公司 一种回归测试方法
CN107544905A (zh) * 2017-08-22 2018-01-05 中国农业银行股份有限公司 回归测试用例集的优化方法和系统
CN107544905B (zh) * 2017-08-22 2021-02-05 中国农业银行股份有限公司 回归测试用例集的优化方法和系统
CN107861873A (zh) * 2017-11-03 2018-03-30 西安理工大学 基于两属性分级调整的测试用例优先级调整方法
CN107861873B (zh) * 2017-11-03 2020-07-28 西安理工大学 基于两属性分级调整的测试用例优先级调整方法
CN108694123A (zh) * 2018-05-14 2018-10-23 中国平安人寿保险股份有限公司 一种回归测试方法、计算机可读存储介质及终端设备
CN109344048A (zh) * 2018-08-17 2019-02-15 中国平安人寿保险股份有限公司 一种测试方法、存储介质和服务器
CN109669861A (zh) * 2018-11-30 2019-04-23 北京百卓网络技术有限公司 一种基于用户预期管理的测试方法及装置
CN110134588A (zh) * 2019-04-16 2019-08-16 江苏大学 一种基于代码和组合覆盖的测试用例优先级排序方法及测试系统
CN110134588B (zh) * 2019-04-16 2023-10-10 江苏大学 一种基于代码和组合覆盖的测试用例优先级排序方法及测试系统
CN110688309A (zh) * 2019-09-20 2020-01-14 中国人民解放军63921部队 基于需求的通用型软件测试用例序列定量评价方法
CN110825620A (zh) * 2019-10-16 2020-02-21 四川大学 回归测试中测试用例优先级计算方法
CN110825621A (zh) * 2019-10-16 2020-02-21 四川大学 基于动态风险的回归测试用例优先级计算方法
CN111427772A (zh) * 2020-03-05 2020-07-17 广东睿江云计算股份有限公司 一种多维度的测试用例优先级排序方法
CN111858341A (zh) * 2020-07-23 2020-10-30 深圳慕智科技有限公司 一种基于神经元覆盖的测试数据度量方法
CN115422095A (zh) * 2022-11-07 2022-12-02 易方信息科技股份有限公司 一种回归测试用例推荐方法、装置、设备及介质

Similar Documents

Publication Publication Date Title
CN105446885A (zh) 一种基于需求的回归测试用例优先级排序技术
CN103257921B (zh) 一种基于改进随机森林算法的软件故障预测系统及其方法
CN107632590B (zh) 一种基于优先级的底事件排序方法
CN102880545A (zh) 一种测试用例优先级排序动态调整方法
US11610117B2 (en) System and method for adapting a neural network model on a hardware platform
CN107025169B (zh) 一种基于贝叶斯网络推理的软件错误分层诊断方法
CN111122199A (zh) 一种锅炉故障诊断方法及装置
CN109992866A (zh) 负荷预测模型的训练方法、装置、可读介质及电子设备
WO2020113526A1 (zh) 一种芯片验证方法和装置
Abdurazik et al. Using coupling-based weights for the class integration and test order problem
Wah et al. Genetics-based learning of new heuristics: Rational scheduling of experiments and generalization
CN112149227B (zh) 船舶管路敏捷设计方法、装置、终端及介质
CN109710514A (zh) 测试用例优先级排序中的tie-breaking的解决方法及系统
CN112446601A (zh) 不可算台区数据诊断方法及系统
CN102455897B (zh) 基于实例的迭代编译方法及编译装置
CN116382658A (zh) Ai模型的编译方法、装置、计算机设备及存储介质
CN111539840A (zh) 一种融合聚类与密度估计的窃电检测方法及系统
Sandhu et al. A density based clustering approach for early detection of fault prone modules
Akimoto et al. A prioritization method for spl pairwise testing based on user profiles
CN102902838A (zh) 基于趋势的过程控制目标设定方法和系统
Zhong et al. Memory-aware Scheduling for Complex Wired Networks with Iterative Graph Optimization
CN112580869A (zh) 一种业务优化方法、装置及设备
Sandhu et al. A comparative analysis of fuzzy, neuro-fuzzy and fuzzy-GA based approaches for software reusability evaluation
CN106301880A (zh) 一种确定网络关系稳定度、互联网业务推荐方法和设备
CN111240881A (zh) 基于贝叶斯网络的Web服务组合异常诊断方法

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
DD01 Delivery of document by public notice

Addressee: Southwest University

Document name: Notification of Passing Preliminary Examination of the Application for Invention

C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
WD01 Invention patent application deemed withdrawn after publication

Application publication date: 20160330

WD01 Invention patent application deemed withdrawn after publication