一种基于测试需求生成最小用例集的方法及装置与流程

文档序号:13164412阅读:302来源:国知局
一种基于测试需求生成最小用例集的方法及装置与流程

本发明涉及软件测试技术领域,更具体地说,涉及一种基于测试需求生成最小用例集的方法及装置。



背景技术:

软件测试是软件开发过程中一个不可缺少的步骤。在对软件进行测试时,首先需要针对软件需求功能设计测试用例,在用例的指导下对软件进行操作,以发现程序是否存在错误,衡量软件质量,并对软件是否能满足设计要求进行评估。

目前,随着软件功能的不断完善以及丰富,需要测试的功能点也在不断地增加,在测试需求集内部可能会出现大量重复的测试需求,与之对应的,用例集内部也会出现大量重复的用例,相应地,执行重复的用例会增加不必要的工作量,降低软件测试的效率。

综上所述,现有测试软件的技术方案存在执行重复用例带来重复工作量、降低软件测试效率的问题。



技术实现要素:

有鉴于此,本发明的目的是提供一种基于测试需求生成最小用例集的方法及装置,以解决现有测试软件的技术方案存在执行重复用例带来重复工作量、降低软件测试效率的问题。

为了实现上述目的,本发明提供如下技术方案:

一种基于测试需求生成最下用例集的方法,包括:

获取与待测试软件对应的测试需求集,确定所述测试需求集为当前需求集,对所述当前需求集中包含的需求进行划分得到对应的多个需求;

利用去冗余算法消除划分得到的多个需求中重复的需求,确定得到的无重复的需求组成当前需求集;

判断所述当前需求集中是否存在能够被划分的需求,如果是,返回执行对所述当前需求集中包含的需求进行划分得到对应的多个需求的步骤,如果否,则确定需求划分结束;

确定所述待测试软件对应的用例集中与需求划分结束时对应当前需求集中每个需求对应的用例,得到最小用例集。

优选的,得到最小用例集之后,还包括:

将所述最小用例集显示在对应显示器上以供工作人员查看。

优选的,得到最小用例集之后,还包括:

利用所述最小用例集中的用例测试所述待测试软件,并在完成该测试后发出对所述待测试软件测试完毕的提示。

一种基于测试需求生成最小用例集的装置,包括:

划分模块,用于:获取与待测试软件对应的测试需求集,确定所述测试需求集为当前需求集,对所述当前测试集中包含的需求进行划分得到对应的多个需求;

消除模块,用于:利用去冗余算法消除划分得到的多个需求中重复的需求,确定得到的无重复的需求组成当前需求集;

判断模块,用于:判断所述当前需求集中是否存在能够被划分的需求,如果是,返回执行对所述当前需求集中包含的需求进行划分得到对应的多个需求的步骤,如果否,则确定需求划分结束;

确定模块,用于:确定所述待测试软件对应的用例集中与需求划分结束时对应当前需求集中每个需求对应的用例,得到最小用例集。

优选的,还包括:

显示模块,用于:得到最小用例集之后,将所述最小用例集显示在对应显示器上以供工作人员查看。

优选的,还包括:

测试模块,用于:得到最小用例集之后,利用所述最小用例集中的用例测试所述待测试软件,并在完成该测试后发出对所述待测试软件测试完毕的提示。

本发明提供了一种基于测试需求生成最小用例集的方法及装置,其中该方法包括:获取与待测试软件对应的测试需求集,确定测试需求集为当前测试需求集,对当前需求集中包含的需求进行划分得到对应的多个需求;利用去冗余算法消除划分得到的多个需求中重复的需求,确定得到的无重复的需求组成当前需求集;判断当前需求集中是否存在能够被划分的需求,如果是,返回执行对当前需求集中包含的需求进行划分得到对应的多个需求的步骤,如果否,则确定需求划分结束;确定待测试软件对应的用例集中与需求划分结束时对应当前需求集中每个需求对应的用例,得到最小用例集。本申请公开的上述技术方案,获取与待测试软件对应的测试需求集,确定获取到的测试需求集为当前需求集,并对当前需求集中包含的需求进行划分得到对应的多个需求,然后,利用去冗余算法消除重复的需求,此时,可以得到无重复的需求,将无重复的需求组成当前需求集,判断当前需求集中是否存在能够被划分的需求,如果存在,则返回执行对当前需求集中包含的需求进行划分得到对应的多个需求的步骤,即进行划分、消除重复的需求、判断的循环,如果不存在,则表明当前需求集中包含的需求不能再被划分,并且需求之间不存在重复的需求,则可以确定需求划分结束,然后,可以确定待测试软件对应的用例集中需求划分结束时对应当前需求集中每个需求对应的用例,并且确定出的用例之间的重复率大大降低,由此可以得到最小用例集,相应地,可以减少重复用例所带来的重复工作量,缩短软件测试的时间,提高软件测试的效率。

附图说明

为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据提供的附图获得其他的附图。

图1为本发明实施例提供的一种基于测试需求生成最小用例集的方法的流程图;

图2为本发明实施例提供的一种基于测试需求生成最小用例集的方法的一种具体实施例;

图3为本发明实施例提供的一种基于测试需求生成最小用例集的装置的结构示意图。

具体实施方式

下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。

请参阅图1,其示出了本发明实施例提供的一种基于测试需求生成最小用例集的方法的流程图,可以包括:

s11:获取与待测试软件对应的测试需求集,确定测试需求集为当前需求集,对当前需求集中包含的需求进行划分得到对应的多个需求。

需要说明的是,在本发明实施例中,上述技术方案的执行主体可以为对应的本发明实施例提供的一种基于测试需求生成最小用例集的装置。

上述装置首先需要获取与待测试软件对应的测试需求集,其中,测试需求集中包含的需求可以为对待测试软件的软件质量、软件功能等进行测试的需求,如对软件安全性、软件生命周期、软件兼容性、编码软件的程序等进行测试的需求,测试需求集中包含的每个需求均可以是通过一个或多个实现上述测试需求的函数组成的,对应的,将需求划分成多个需求时可以是需求包含的多个函数划分成几个组合,每个组合包含至少一个函数,如一个需求包含测试软件安全性和软件生命周期的需求,则可以将测试软件安全性的需求对应函数作为一个需求,测试软件生命周期的需求对应函数作为一个需求,从而得到划分的两个需求,测试软件安全性的需求对应函数可以由多个更小的函数组成,继续对测试软件安全性的需求划分时可以将其包含的每个更小的函数作为一个需求,以此类推;需要注意的是,划分出的需求必须包含至少一个完整的函数,其才能够独立被运行;当然还可以根据实际需要进行其他设定,均在本发明的保护范围之内。

s12:利用去冗余算法消除划分得到的多个需求中重复的需求,确定得到的无重复的需求组成当前需求集。

利用去冗余算法消除划分得到的多个需求中重复的需求,得到无重复的需求,并确定得到的无重复的需求组成当前需求集。其中去冗余算法的具体实现过程可以表示为:

其中,r表示当前需求集,ri和rj表示当前需求集中划分得到的需求。利于去冗余算法消除重复的需求的方式具有较高的可行性,可以提高消除重复的需求的效率。

s13:判断当前需求集中是否存在能够被划分的需求,如果是,返回执行对当前需求集中包含的需求进行划分得到对应的多个需求的步骤,如果否,则确定需求划分结束。

上述装置在将得到的无重复的需求组成当前需求集之后,判断当前需求集中是否存在能够被划分的需求具体可以包括:当需求是通过一个或者多个函数组成的时,对于任一需求是否能够被划分则确定该需求中包含的函数是否能够划分为可独立运行的更小的函数,如果是,则说明可以被划分,否则,则不能被划分。如果判断出当前需求集中存在能够被划分的需求,则为了降低需求的重复率,可以返回执行对当前需求集中包含的需求进行划分得到对应的多个需求的步骤,即进行划分、消除重复的需求、判断的循环;如果判断出当前需求集中不存在能够被划分的需求,则表明当前需求集中包含的需求不能够继续被划分,并且需求之间不存在重复的需求,则可以确定需求划分结束。

s14:确定待测试软件对应的用例集中与需求划分结束时对应当前需求集中每个需求对应的用例,得到最小用例集。

待需求划分结束之后,可以确定待测试软件对应的用例集中与需求划分结束时对应当前需求集中每个需求对应的用例,因划分结束时当前需求集中需求之间不存在重复的需求,则与需求对应的用例之间的重复率也会大大地降低,由此可以得到最小用例集,从而在软件测试时可以快速匹配到对应的用例,减少工作量以及软件测试的成本,提高软件测试的效率。

本申请公开的上述技术方案,获取与待测试软件对应的测试需求集,确定获取到的测试需求集为当前需求集,并对当前需求集中包含的需求进行划分得到对应的多个需求,然后,利用去冗余算法消除重复的需求,此时,可以得到无重复的需求,将无重复的需求组成当前需求集,判断当前需求集中是否存在能够被划分的需求,如果存在,则返回执行对当前需求集中包含的需求进行划分得到对应的多个需求的步骤,即进行划分、消除重复的需求、判断的循环,如果不存在,则表明当前需求集中包含的需求不能再被划分,并且需求之间不存在重复的需求,则可以确定需求划分结束,然后,可以确定待测试软件对应的用例集中需求划分结束时对应当前需求集中每个需求对应的用例,并且确定出的用例之间的重复率大大降低,由此可以得到最小用例集,相应地,可以减少重复用例所带来的重复工作量,缩短软件测试的时间,提高软件测试的效率。

作为一个具体实施例,可以对本发明的上述技术方案进行说明,请参见图2,其示出了本发明实施例提供的一种基于测试需求生成最小用例集的方法的一种具体实施例,首先将当前需求集划分成需求1、需求2、需求……、需求n,利用上述提及的去冗余算法消除重复需求,得到需求1'、需求2'、需求……、需求m,其中,m不大于n,依据上述判断,如果划分得到的需求能够继续被划分,则将得到的无重复的需求组成当前需求集,并将内部包含的需求进行划分得到对应的多个需求,如将需求1'划分成r11、r12、r13、……、r1i,对其他能够划分的需求进行划分时与此类似,在此不再赘述,然后利用去冗余算法消除重复需求,最终得到r13、r22、r31,并且判断出此时得到的需求不能再进行划分,则划分结束,并确定待测试软件对应的用例集中与需求划分结束时每个需求对应的用例,得到最小用例集。

本发明实施例提供的一种基于测试需求生成最小用例集的方法,得到最小用例集之后,还可以包括:

将最小用例集显示在对应显示器上以供工作人员查看。

待上述装置得到最小用例集之后,可以将最小用例集显示在对应显示器上,以供工作人员查看最小用例集中包含的用例的情况,由此得出对待测试软件进行的测试操作类型,以便于对待测试软件进行及时维护。

本发明实施例提供的一种基于测试需求生成最小用例集的方法,得到最小用例集之后,还可以包括:

利用最小用例集中的用例测试待测试软件,并在完成该测试后发出对待测试软件测试完毕的提示。

在得到最小用例集之后,可以直接利用最小用例集中的用例测试待测试软件,此时,因用例集中的用例的重复率比较低,相应地,测试待测试软件的工作量可以大大降低。在完成对待测试软件的测试之后,可以在对应显示器上发出对待测试软件测试完毕的提示,以便于工作人员可以根据提示衡量待测试软件的质量,或者是找出待测试软件的不足然后进行修正。

本发明实施例还提供了一种基于测试需求生成最小用例集的装置,如图3所示,可以包括:

划分模块11,用于:获取与待测试软件对应的测试需求集,确定测试需求集为当前需求集,对当前测试集中包含的需求进行划分得到对应的多个需求;

消除模块12,用于:利用去冗余算法消除划分得到的多个需求中重复的需求,确定得到的无重复的需求组成当前需求集;

判断模块13,用于:判断当前需求集中是否存在能够被划分的需求,如果是,返回执行对当前需求集中包含的需求进行划分得到对应的多个需求的步骤,如果否,则确定需求划分结束;

确定模块14,用于:确定待测试软件对应的用例集中与需求划分结束时对应当前需求集中每个需求对应的用例,得到最小用例集。

本发明实施例提供的一种基于测试需求生成最小用例集的装置,还可以包括:

显示模块,用于:得到最小用例集之后,将最小用例集显示在对应显示器上以供工作人员查看。

本发明实施例提供的一种基于测试需求生成最小用例集的装置,还可以包括:

测试模块,用于:得到最小用例集之后,利用最小用例集中的用例测试待测试软件,并在完成该测试后发出对待测试软件测试完毕的提示。

本发明实施例提供的一种基于测试需求生成最小用例集的装置中相关部分的说明请参见本发明实施例提供的一种基于测试需求生成最小用例集的方法中对应部分的详细说明,在此不再赘述。另外,本发明实施例提供的上述技术方案中与现有技术中对应技术方案实现原理一致的部分并未详细说明,以免过多赘述。

对所公开的实施例的上述说明,使本领域技术人员能够实现或使用本发明。对这些实施例的多种修改对本领域技术人员来说将是显而易见的,本文中所定义的一般原理可以在不脱离本发明的精神或范围的情况下,在其它实施例中实现。因此,本发明将不会被限制于本文所示的这些实施例,而是要符合与本文所公开的原理和新颖特点相一致的最宽的范围。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1