一种浪涌测试方法及系统的制作方法
【技术领域】
[0001]本申请涉及自动化技术领域,尤其涉及一种浪涌测试方法及系统。
【背景技术】
[0002]目前,为了了解系统的承受能力,一般会对系统进行浪涌测试。浪涌测试是指对系统的一种测试案例;该案例的测试目的是在系统用户数量过大导致响应缓慢时,定量度量迅速减小多少压力可以在短时间内使得系统恢复正常。例如,在系统访问用户数量过多时,可以减少访问系统的用户数量,在减少用户数量A之后系统恢复正常,那么,用户数量A即为浪涌测试的结果。
[0003]目前,对系统进行浪涌测试的过程可以分为以下3个步骤:
[0004]步骤1:不断增加访问系统的虚拟用户的数量,直到测试对象出现问题;例如,测试对象出现响应缓慢,反应时间较长等问题;此时表明虚拟用户的数量已经达到系统所能承受的上限。
[0005]步骤2:不断降低访问系统的虚拟用户的数量,此时系统会慢慢恢复。当系统恢复正常时,记录此时已减少的虚拟用户数量。或者,直接减少一定数量的虚拟用户数量,查看系统是否恢复正常。
[0006]步骤3:增加虚拟用户的数量至正常数量,以便看系统是否能够正常运行。步骤3中的正常数量,为测试对象实际上可以承载虚拟用户的数量。
[0007]在步骤2减少虚拟用户数量之后,为了进一步确定系统是否正常,因此在步骤3中增加虚拟用户数量至正常数量。若测试对象在具有正常数量的虚拟用户时,仍然能够正常运行,则说明系统确实已经恢复正常。此时可以将步骤2中已减少的虚拟用户数量,确定为浪涌测试的结果。若测试对象在具有正常数量的虚拟用户时,不能够正常运行,则说明在步骤2中减少虚拟用户数量后,系统仍未恢复正常。
[0008]目前,在系统测试过程中会经常使用LoadRunner软件,LoadRunner软件是一种预测系统行为和性能负载的测试工具;其可以通过模拟上千万用户实施并发负载。因此,在进行浪涌测试时可以使用LoadRunner软件,来模拟虚拟用户。
[0009]下面介绍将LoadRunner软件应用至浪涌测试的过程:
[0010]浪涌测试LoadRunner软件可以分为两个部分:主控端和执行端。以η台终端为例,在具体实现时可以为:将LoadRunner软件的执行端安装至η台终端上,将LoadRunner软件的主控端安装在其中一台终端上。主控端可以控制各个终端上的执行端,从而实现虚拟用户数量的增加或减少的目的。
[0011]针对浪涌测试的步骤1:当需要增加虚拟用户数量时,主控端会控制各个执行端均匀增加虚拟用户数量,即虚拟用户数量的会均匀增加在η台终端上,直至测试对象出现问题。
[0012]针对浪涌测试的步骤2:当需要减少虚拟用户数量时,主控端会将一个终端上虚拟用户的数量减少至零,然后再将另一终端上虚拟用户数量减少至零,依次类推,直到已减少的虚拟用户数量达到要求为止。即主控端可以将终端1的虚拟用户数量降到0,再将终端2的虚拟用户数量将至零,依次类推,直到已减少的数量虚拟用户数量达到目标总数量,目标总数量可以为预先设定需要减少的虚拟用户数量。
[0013]也就是说,在LoadRunner软件中主控端不会在各个终端上均匀减少虚拟用户的数量,而是逐个减少各个终端的虚拟用户的数量。这就使得其中一部分终端的虚拟用户数量减少至零,而另一部分终端的虚拟用户数量不会减少。
[0014]针对浪涌测试的步骤3:当需要增加虚拟用户数量时,基于LoadRunner软件的标准,再次增加虚拟用户数量时,主控端仍然在各个终端上均匀增加虚拟用户数量。
[0015]但是,在步骤3中再次增加虚拟用户数量时,会导致在步骤2中未减少虚拟用户数量的终端上的虚拟用户数量过多,从而直接导致测试对象出现问题,这导致在步骤2中减少的虚拟用户数量后,无法确定系统是否已经恢复正常,进而导致浪涌测试失败。
[0016]从以上内容可以看出:针对浪涌测试的特殊场景,由于LoadRunner软件自身的缺陷,导致浪涌测试失败。因此,现在需要一种方法来避免LoadRunner软件自身的缺陷,从而实现利用LoadRunner软件完成浪涌测试的目的。
【发明内容】
[0017]本申请提供了一种浪涌测试方法及系统,使用本申请可以实现利用LoadRunner软件完成浪涌测试的目的。
[0018]为了实现上述目的,本申请提供了以下技术手段:
[0019]一种浪涌测试系统,包括:
[0020]第一预设数量的终端集合组;其中,每个终端集合组中所有终端均安装有LoadRunner软件的执行端,每个终端集合组中的一个终端安装有LoadRunner软件的主控端;并且,所述第一预设数量大于等于2 ;
[0021]与所述第一预设数量的终端集合组相连的测试对象。
[0022]优选的,第二数量总和在第一数量总和的占有比例不小于预先设定的目标值;其中,所述第一数量总和为在第一预设数量的终端集合组中所有终端数量总和,所述第二数量总和为第二预设数量的终端集合组中所有终端的数量总和;所述第二预设数量小于所述第一预设数量。
[0023]优选的,每个终端集合组包含相同数量的终端。
[0024]—种浪涌测试方法,应用于所述的浪涌测试系统,所述方法包括:
[0025]第一预设数量的终端集合组中所有LoadRunner软件的主控端,在接收增加虚拟用户数量的指令之后,控制该终端集合组内的所有LoadRunner软件的执行端,均匀增加虚拟用户数量,直至所述浪涌测试系统中的测试对象出现问题;
[0026]第一集合中每个终端集合组的LoadRunner软件的主控端,在接收减少虚拟用户数量的指令之后,控制该终端集合组内的所有LoadRunner软件的执行端,逐个减少虚拟用户数量,直至该终端集合组内的所有LoadRunner软件的执行端的虚拟用户数量至零;其中,所述第一集合中包含一个或多个终端集合组;
[0027]第二集合中的每个终端集合组的LoadRunner软件的主控端,在接收增加虚拟用户数量的指令之后,控制该终端集合组内的所有LoadRunner软件的执行端,均匀增加虚拟用户数量;其中,所述第二集合为所述第一集合中一个或多个的终端集合组的集合。
[0028]优选的,第二数量总和在第一数量总和的占有比例不小于预先设定的目标值;其中,所述第一数量总和为在第一预设数量的终端集合组中所有终端数量总和,所述第二数量总和为第一集合所包含的第二预设数量的终端集合组中所有终端的数量总和;所述第二预设数量小于所述第一预设数量。
[0029]优选的,其中,所述第二集合为所述第一集合中第三预设数量的终端集合组的集合,所述第三预设数量小于等于所述第二预设数量。
[0030]优选的,所述每个终端集合组包含相同数量的终端。
[0031]从以上内容可以看出,本申请具有以下优点:
[0032]本申请在没有改变LoadRunner软件基础上,将所有终端分为多个终端集合组,在减少虚拟用户数量时,将一个或多个终端集合组中所有终端的虚拟用户数量减少至零。在增加虚拟用户数量时,仅仅在已减少虚拟用户数量的终端集合组上增加各个终端的虚拟用户数量。所以,不会出现在均匀增加虚拟用户数量时,导致一些终端上虚拟用户数量过多,引起测试对象出现问题的现象产生。即本申请可以规避LoadRunner软件的缺陷,利用本申请可以实现利用LoadRunner软件进行浪涌测试的目的。
【附图说明】
[0033]为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
[0034]图1为本申请实施例公开的一种浪涌测试系统的结构图;
[0035]图2为本申请实施例公开的一种浪涌测试方法的流程图;
[0036]图3为本申请实施例公开的又一种浪涌测试系统的结构图。
【具体实施方式】
[0037]下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
[0038]本申请发明人在仔细研究LoadRunner软件在浪涌测试的实现过程后,发现:现有技术中所有终端均安装有LoadRunner软件的执行端,但是只有一个LoadRunner软件的主控端,所有终端均由一个主控端来控制。这导致现有技术具有以下问题:
[0039]在浪涌测试第一步中增加虚拟用户数量时,主控端均匀增加所有终端的虚拟用户数量。在浪涌测试第二步中减少虚拟用户数量时,主控端逐个减少一个或多个虚拟用户的数量。在浪涌测试第三步增加用户数量时,由于主控端管控所有终端,因此仍然会均匀增加所有终端的虚拟用户数量。这导致浪涌测试的失败。
[0040]通过研究分析,本申请发明人发现导致浪涌测试