CN113596871A - 一种测试方法、服务器及计算机存储介质 - Google Patents
一种测试方法、服务器及计算机存储介质 Download PDFInfo
- Publication number
- CN113596871A CN113596871A CN202110756103.0A CN202110756103A CN113596871A CN 113596871 A CN113596871 A CN 113596871A CN 202110756103 A CN202110756103 A CN 202110756103A CN 113596871 A CN113596871 A CN 113596871A
- Authority
- CN
- China
- Prior art keywords
- test
- task
- environment
- tasks
- wireless communication
- 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
Links
- 238000010998 test method Methods 0.000 title claims abstract description 13
- 238000012360 testing method Methods 0.000 claims abstract description 798
- 238000004891 communication Methods 0.000 claims abstract description 76
- 238000000034 method Methods 0.000 claims abstract description 30
- 230000004044 response Effects 0.000 claims description 22
- 230000001419 dependent effect Effects 0.000 claims 1
- 238000010586 diagram Methods 0.000 description 27
- 238000005516 engineering process Methods 0.000 description 9
- 238000004590 computer program Methods 0.000 description 7
- 238000010295 mobile communication Methods 0.000 description 7
- 238000012545 processing Methods 0.000 description 5
- 230000006870 function Effects 0.000 description 4
- MQTOSJVFKKJCRP-BICOPXKESA-N azithromycin Chemical compound O([C@@H]1[C@@H](C)C(=O)O[C@@H]([C@@]([C@H](O)[C@@H](C)N(C)C[C@H](C)C[C@@](C)(O)[C@H](O[C@H]2[C@@H]([C@H](C[C@@H](C)O2)N(C)C)O)[C@H]1C)(C)O)CC)[C@H]1C[C@@](C)(OC)[C@@H](O)[C@H](C)O1 MQTOSJVFKKJCRP-BICOPXKESA-N 0.000 description 3
- 238000004422 calculation algorithm Methods 0.000 description 3
- 230000000295 complement effect Effects 0.000 description 3
- 238000004458 analytical method Methods 0.000 description 2
- 238000012544 monitoring process Methods 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- 230000006978 adaptation Effects 0.000 description 1
- 238000004364 calculation method Methods 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 238000012163 sequencing technique Methods 0.000 description 1
- 238000004088 simulation Methods 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W24/00—Supervisory, monitoring or testing arrangements
- H04W24/02—Arrangements for optimising operational condition
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Mobile Radio Communication Systems (AREA)
Abstract
本申请实施例公开了一种测试方法,包括:获取无线通讯设备的测试任务,根据测试任务的测试用例,从预设的测试环境集中选取出包含测试任务的测试用例的测试环境,当选取出的测试环境的个数为至少两个时,将选取出的测试环境中剩余测试用例的个数最少的测试环境,确定为测试任务的测试环境。本申请实施例还同时提供了一种测试方法、服务器及计算机存储介质。
Description
技术领域
本申请涉及无线通讯设备的测试技术,尤其涉及一种测试方法、服务器及计算机存储介质。
背景技术
现今,在无线通讯设备测试领域,由于产品的测试过程有较多的依赖因素,常见的因素是依赖各种测试设备,即某个测试过程只能在部分的测试执行机上进行测试,例如,目前的通讯产品多是支持多模制式的,第二代移动通信技术(2G,2nd Generation MobileCommunication Technology)/第三代移动通信技术(3G,3rd Generation MobileCommunication Technology)/第四代移动通信技术(4G,4th Generation MobileCommunication Technology)/第五代移动通信技术(5G5th Generation MobileCommunication Technology),在测试该种产品时,需要组建2G/3G/4G/5G测试环境,可采用的方式也是多种多样,可以使用测试仪表,也可以使用实验室模拟网,也可能使用商用环境,这必然导致测试环境具备支持不同的测试需求,只有5G测试设备的测试环境,就只能完成5G的测试任务;有4G、5G测试设备的测试环境,才能完成4G和5G的测试任务。同时搭建测试环境需要的成本非常高,需要配合测试的仪表种类繁多,测试环境的数量一般很受限。
目前自动化测试调度方式可分为两种:一种是人工调度执行,当有新测试任务时,人工根据测试计划进行测试用例的选择,选择测试执行机等流程,人工调度多个测试环境分时进行测试任务执行;另一种是自动化调度固定的某个测试环境,将测试任务和测试环境进行关联绑定,用表来记录该关联关系,自动化系统根据测试任务名称查关联表进行调度。
然而,现有的测试方法中所采用的调度策略较简单,针对复杂多变的测试执行环境,会影响测试效率;由此可以看出,现有的无线通信设备的测试方法不适用于复杂多变的测试环境的技术问题。
发明内容
本申请实施例提供一种测试方法、服务器及计算机存储介质,能够适用于复杂多变的测试环境,提高测试效率。
本申请的技术方案是这样实现的:
本申请实施例提供一种测试方法,包括:
获取无线通讯设备的测试任务;
根据所述测试任务的测试用例,从预设的测试环境集中选取出包含所述测试任务的测试用例的测试环境;
当选取出的测试环境的个数为至少两个时,将选取出的测试环境中剩余测试用例的个数最少的测试环境,确定为所述测试任务的测试环境;
其中,所述剩余测试用例为所述选取出的测试环境中除了所述测试任务的测试用例以外的测试用例,所述测试任务的测试环境用于根据所述测试任务对所述无线通讯设备进行测试。
本申请实施例提供一种服务器,包括:
获取模块,用于获取无线通讯设备的测试任务;
选取模块,用于根据所述测试任务的测试用例,从预设的测试环境集中选取出包含所述测试任务的测试用例的测试环境;
确定模块,用于当选取出的测试环境的个数为至少两个时,将选取出的测试环境中剩余测试用例的个数最少的测试环境,确定为所述测试任务的测试环境;
其中,所述剩余测试用例为所述选取出的测试环境中除了所述测试任务的测试用例以外的测试用例,所述测试任务的测试环境用于根据所述测试任务对所述无线通讯设备进行测试。
本申请实施例提供一种服务器,包括:处理器以及存储有所述处理器可执行指令的存储介质,所述存储介质通过通信总线依赖所述处理器执行操作,当所述指令被所述处理器执行时,执行上述一个或多个实施例所述的测试方法。
本申请实施例提供一种计算机存储介质,存储有可执行指令,当所述可执行指令被一个或多个处理器执行的时候,所述处理器执行如上述一个或多个实施例所述的测试方法。
本申请实施例提供了一种测试方法、服务器及计算机存储介质,获取无线通讯设备的测试任务,根据测试任务的测试用例,从预设的测试环境集中选取出包含测试任务的测试用例的测试环境,当选取出的测试环境的个数为至少两个时,将选取出的测试环境中剩余测试用例的个数最少的测试环境,确定为测试任务的测试环境,其中,剩余测试用例为选取出的测试环境中除了测试任务的测试用例以外的测试用例,测试任务的测试环境用于根据测试任务对无线通讯设备进行测试;也就是说,在本申请实施例中,首先根据获取到的测试任务的测试用例从预设的测试环境集中选取测试环境,然后,当选取出的测试环境的个数为至少两个时,将剩余测试用例中个数最少的测试环境确定为测试任务的测试环境,这样,测试任务的测试用例占有测试任务的测试环境中全部测试用例的比例最大,将占有全部测试用例的比例较小的测试环境留给占有比例较多的测试任务,如此,在有限的测试环境下,能够最大限度的增加测试环境的利用率,从而提高了测试环境的测试效率。
附图说明
图1为本申请实施例提供的一种可选的测试方法的流程示意图;
图2为本申请实施例提供的一种可选的测试任务表结构的示意图;
图3为本申请实施例提供的一种可选的测试环境表结构的示意图;
图4为本申请实施例提供的一种可选的测试系统的结构示意图;
图5为本申请实施例提供的一种可选的注册方法的流程示意图;
图6为本申请实施例提供的一种可选的注销方法的流程示意图;
图7为本申请实施例提供的一种可选的测试能力表结构的示意图;
图8本申请实施例提供的一种可选的测试任务的生成方法的流程示意图;
图9为本申请实施例提供的一种可选的测试方法的实例的流程示意图;
图10a为本申请实施例提供的一种可选的测试任务-1与测试环境-1的结构示意图;
图10b为本申请实施例提供的一种可选的测试任务-1与测试环境-2的结构示意图;
图10c为本申请实施例提供的一种可选的测试任务-1与测试环境-3的结构示意图;
图11为本申请实施例提供的一种可选的服务器的结构示意图;
图12为本申请实施例提供的另一种可选的服务器的结构示意图。
具体实施方式
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述。
本申请实施例提供了一种测试方法,该方法应用于服务器中,图1为本申请实施例提供的一种可选的测试方法的流程示意图,如图1所示,该测试方法可以包括:
S101:获取无线通讯设备的测试任务;
目前,针对自动化的调度测试,将测试任务和测试环境进行关联,用表来记录该关联关系,自动化系统根据测试任务的名称从表中查找所关联的测试环境,所关联的测试环境执行该测试任务,然而,该调度策略逻辑简单,针对复杂多变的测试环境来说并不适应,从而会影响测试效率。
为了提高测试效率,本申请实施例提供一种测试方法,该测试方法应用于服务器中,其中,该服务器为测试系统中的其中一个设备,该测试系统还可以包括测试环境,并且,服务器和测试环境之间建立有通信连接,其中,服务器用于接收用户设备下发的测试任务,服务器每接收到一个测试任务之后,对所有未执行的测试任务进行调度,得到当前需要执行的测试任务和该测试任务的测试环境,这样,能够实现依次对接收到的测试任务进行测试。
那么,服务器在接收到测试任务之后,服务器中有可能存储有一个的测试任务,也有可能存储有多个测试任务,为了获取到无线通讯设备的测试任务,当服务器中仅仅存储有一个测试任务时,将该测试任务确定为无线通讯设备的测试任务,当服务器中存储有多个测试任务时,可以采用某种规则来获取无线通讯设备的测试任务,例如,采用优先级的方式来获取无线通讯设备的测试任务。这里,本申请实施例对此不作具体限定。
为了获取无线通讯设备的测试任务,在一种可选的实施例中,S101可以包括:
接收至少两个测试任务;
根据至少两个测试任务的优先级,从至少两个测试任务中获取无线通讯设备的测试任务。
具体来说,当服务器接收到至少两个测试任务时,也就是说,服务器需要对至少两个测试任务进行调度时,可以根据至少两个测试任务的优先级,从至少两个测试任务中获取无线通讯设备的测试任务,例如,将优先级高的测试任务确定为无线通讯设备的测试任务。
那么,为了根据至少两个测试任务的优先级,获取无线通讯设备的测试任务,需要先确定出至少两个测试任务的优先级,为了确定出至少两个测试任务的优先级,在一种可选的实施例中,根据至少两个测试任务的优先级,从至少两个测试任务中获取无线通讯设备的测试任务,包括:
获取至少两个测试任务中每个测试任务的级别;
根据每个测试任务的级别,确定每个测试任务的优先级;
将优先级最高的测试任务,确定为无线通讯设备的测试任务。
具体来说,服务器先获取至少两个测试任务中每个测试任务的级别,这里,需要说明的是,每个测试任务都具有测试任务表,图2为本申请实施例提供的一种可选的测试任务表结构的示意图,如图2所示,该表用于存储所有测试任务的信息。
其中,字段“priority”表示测试任务的级别,取值范围:1~9,数值越高,级别越高;
字段“selected_case_list”表示测试任务需要测试的测试用例列表,是测试能力的测试用例列表的子集;
字段“job_status”表示测试任务执行状态,取值范围:{“NoRun”,“executing”,“executed”};
字段“job_create_time”表示测试任务创建时间。
这里,根据每个测试任务的“priority”获取每个测试任务的级别,然后,根据每个测试任务的级别来确定每个测试任务的优先级,例如,将级别按照由高到低进行排序,并按照级别的高低来确定测试任务的优先级,级别越高,优先级越高,并且针对相同测试任务的级别,所确定的测试任务的优先级是相同的。
在确定出测试任务的优先级之后,可以将优先级最高的测试任务确定为无线通讯设备的测试任务,其中,需要说明的是,优先级最高的测试任务的个数就可以为一个,也可以为多个,这里,本申请实施例对此不作具体限定。
针对优先级最高的测试任务为多个时,在一种可选的实施例中,将优先级最高的测试任务,确定为无线通讯设备的测试任务,包括:
当优先级最高的测试任务的个数为一个时,将优先级最高的测试任务,确定为无线通讯设备的测试任务;
当优先级最高的测试任务的个数为至少两个时,将优先级最高的测试任务中创建时间最早的测试任务,确定为无线通讯设备的测试任务。
也就是说,当优先级最高的测试任务的个数为一个时,将优先级最高的测试任务确定为无线通讯设备的测试任务,当为多个时,可以随机的从优先级最高的测试任务中一个测试任务为无线通讯设备的测试任务,也可以采用其他方式来确定,这里,本申请实施例对此不作具体限定。
为了使得测试任务能够及时地完成,这里,针对优先级最高的测试任务的个数为至少两个时,根据每个测试任务的“job_create_time”获取每个测试任务的创建时间,然后,可以根据优先级最高的测试任务的创建时间对优先级最高的测试任务进行排序,从而从优先级最高的测试任务中找到创建时间最早的测试任务,并将创建时间最早的测试任务确定为无线通讯设备的测试任务。
另外,为了根据至少两个测试任务的优先级,获取无线通讯设备的测试任务,需要先确定出至少两个测试任务的优先级,为了确定出至少两个测试任务的优先级,在一种可选的实施例中,根据至少两个测试任务的优先级,从至少两个测试任务中获取无线通讯设备的测试任务,包括:
获取至少两个测试任务中每个测试任务的创建时间;
根据每个测试任务的创建时间,确定每个测试任务的优先级;
将优先级最高的测试任务,确定为无线通讯设备的测试任务。
具体来说,服务器先获取至少两个测试任务中每个测试任务的创建时间,然后,根据每个测试任务的创建时间,按照创建时间由早到晚的顺序,对每个测试任务进行排序,并按照优先级由高到低的顺序确定排序结果中的每个测试任务的优先级,创建时间越早,优先级越高。
针对创建时间相同的测试任务,优先级也相同,当优先级最高的测试任务为一个时,将优先级最高的测试任务确定为无线通讯设备的测试任务,当为多个时,可以随机的从优先级最高的测试任务中一个测试任务为无线通讯设备的测试任务,也可以采用其他方式来确定,这里,本申请实施例对此不作具体限定。
例如,可以按照测试任务的级别,从优先级最高的测试任务中将级别最高的测试任务确定为无线通讯设备的测试任务。
S102:根据测试任务的测试用例,从预设的测试环境集中选取出包含测试任务的测试用例的测试环境;
通过S101获取到无线通讯设备的测试任务之后,下一步,需要为测试任务选取适合的测试环境,这里,根据测试任务的测试任务表可以得知测试任务的测试用例,由于服务器中存储有测试环境集,测试环境集中包含有一个或多个测试环境,图3为本申请实施例提供的一种可选的测试环境表结构的示意图,如图3所示,该表用于存储所有测试环境的信息。
其中,字段“test_rack_supported_case_list”表示测试环境支持的测试用例列表;
字段“test_rack_status”表示测试环境的执行状态,取值范围:{“idle”,“busy”};
字段“test_rack_available”表示测试环境的注册状态,取值范围:{“online”,“offline”}。
也就是说,可以从预设的测试环境集中获取每个测试环境的测试环境表结构,从每个测试环境表结构中得知该测试环境支持的测试用例,从而可以从预设的测试环境集中选取出包含测试用例的测试环境。
另外,由于预设的测试环境集中,有些测试环境处于正在执行其他测试任务,或者还属于未注册的状态,那么,为了使得选取出的测试环境为可以用于测试的测试环境,在一种可选的实施例中,S102可以包括:
从预设的测试环境集中,将执行状态为空闲状态且注册状态为在线状态的测试环境确定为可选的测试环境;
根据测试任务的测试用例,从可选的测试环境中选取出包含测试任务的测试用例的测试环境。
具体来说,从预设的测试环境集中,获取每个测试环境的执行状态和注册状态,并选取出执行状态为“idle”,并且注册状态为“online”的测试环境,这样的测试环境为能够用于测试的测试环境,所以将执行状态为空闲状态且注册状态为在线状态的测试环境确定为可选的测试环境,再从可选的测试环境中,选取出包含测试任务的测试用例的测试环境。
S103:当选取出的测试环境的个数为至少两个时,将选取出的测试环境中剩余测试用例的个数最少的测试环境,确定为测试任务的测试环境。
通过上述S102选取出包含测试任务的测试用例的测试环境之后,当选取出的测试环境为一个时,直接将选取出的测试环境确定为测试任务的测试环境,当选取出的测试任务的测试环境为至少两个时,为了提高测试环境的利用率,这里,将选取出的测试环境中剩余测试用例的个数最少的测试环境确定为该测试任务的测试环境。
其中,剩余测试用例为选取出的测试环境中除了测试任务的测试用例以外的测试用例,测试任务的测试环境用于根据测试任务对无线通讯设备进行测试,也就是说,剩余测试用例的个数最少的测试环境根据测试任务对无线通讯设备进行测试,如此,使得用于执行测试任务的测试环境为占有测试任务的测试用例的比重最多的测试环境,将占有测试任务的测试用例的比重较少的测试环境留给其他测试任务,这样,能够提高测试环境侧测试效率。
另外,为了能够使用测试环境,需要将测试环境注册至服务器中,在一种可选的实施例中,上述方法还包括:
接收来自测试环境的注册消息;
解析注册消息,得到测试环境的信息;
将测试环境的信息存储至数据库中,并生成注册消息的响应消息,返回注册消息的响应消息。
具体来说,服务器先接收测试环境的注册消息,通过解析注册消息可以得到测试环境的信息,为了将测试环境注册至服务器中,将解析得到的测试环境的信息存储至数据库中,这里,该数据库可以为服务器中的数据库,也可以为与服务器建立有数据通信连接的数据库,这里,本申请实施例对此不作具体限定。
在将测试环境的信息存储至数据库之后,服务器生成注册消息的响应消息,其中,注册消息的响应消息用于通知测试环境注册成功,返回该注册消息的响应消息,以告知服务器该测试环境注册成功,从而可以将该测试环境的注册状态修改为在线状态,以便于服务器在调度测试环境时判断测试环境的注册状态。
另外,为了能够及时地注销测试环境,在一种可选的实施例中,上述方法还包括:
接收来自已经注册的测试环境的注销消息;
根据注销消息,确定测试环境的信息;
从数据库中删除测试环境的信息,并生成注销消息的响应消息,返回注销消息的响应消息。
具体来说,服务器先接收已经注册的测试环境的注销消息,通过解析注销消息可以得到测试环境的信息,为了将测试环境的信息从服务器中注销掉,将解析得到的测试环境的信息从数据库中删除掉,这里,该数据库可以为服务器中的数据库,也可以为与服务器建立有数据通信连接的数据库,这里,本申请实施例对此不作具体限定。
在将测试环境的信息从数据库中删除掉之后,服务器生成注销消息的响应消息,其中,注销消息的响应消息用于通知测试环境注销成功,返回该注销消息的响应消息,以告知服务器该测试环境注销成功,从而可以将该测试环境的注册状态修改为离线状态,以便于服务器在调度测试环境时判断测试环境的注册状态。
下面举实例来对上述一个或多个实施例所述的测试方法进行说明。
图4为本申请实施例提供的一种可选的测试系统的结构示意图,如图4所示,该测试系统包括ZMAS客户端(client),ZMAS服务器(server)和数据库(DB,Data Base),该测试系统还包括测试环境(图4中未示出),
其中,该测试系统采用socket技术进行测试环境和调度中心服务器(相当于上述ZMAS server)之间的通信方式。
如图4所示,调度中心服务器开启了注册socket端口:10000,针对测试平台1(Testrack 1)来说,测试员需要将测试环境注册到调度中心服务器时,该测试环境会发送注册消息(Registration)给调度中心的端口10000,在调度中心服务器的工作执行的线程(jobexecuting thread)为:调度中心服务器发现该注册消息后,将解析注册消息中包含的该测试环境的信息录入数据库中(update),使得DB中存储有测试平台的索引:Test rack 1,IP地址:192.168.1.1,所支持的测试用例:case1,case2,case3;并回复注册状态信息给测试环境(Return attach status)。
针对测试平台2(Test rack 2)来说,与Test rack 1相同,测试员需要将测试环境注册到调度中心服务器时,该测试环境会发送注册消息(Registration)给调度中心的端口10000,在调度中心服务器的工作执行的线程(job executing thread)为:调度中心服务器发现该注册消息后,将解析注册消息中包含的该测试环境的信息录入数据库中(update),使得DB中存储有测试平台的索引:Test rack 2,IP地址:192.168.1.2,所支持的测试用例:case4,case5,case6;并回复注册状态信息给测试环境(Return attach status)。
测试环境启动测试任务的消息监听,即可收到调度中心服务器发来的调度信息,注销流程和注册流程基本相同,调度中心服务器收到注销消息后,将该测试执行环境信息从数据库中删除,并返回注销状态。仍然以图4为例,针对测试平台1(Test rack 1)来说,测试员需要将测试环境从调度中心服务器中注销掉时,该测试环境会发送注销消息(Un-registration)给调度中心的端口10000,在调度中心服务器的工作执行的线程(jobexecuting thread)为:调度中心服务器发现该注销消息后,将解析注销消息中包含的该测试环境的信息从数据库中删除掉(update),使得DB中删除了测试平台的索引为Test rack1的内容;并回复注销状态信息给测试环境(Return detach status)。测试执行环境收到注销成功后,停止监听测试任务消息。
图5为本申请实施例提供的一种可选的注册方法的流程示意图,如图5所示,该注册方法可以包括:
S501:测试环境发送注册消息给调度中心服务器;
S502:调度中心服务器接收和解析注册消息;
S503:调度中心服务器将解析得到的测试环境的信息录入数据库中;
S504:调度中心服务器返回注册成功的消息。
图6为本申请实施例提供的一种可选的注销方法的流程示意图,如图6所示,该注销方法可以包括:
S601:测试环境发送注销消息给调度中心服务器;
S602:调度中心服务器接收和解析注销消息;
S603:调度中心服务器将解析得到的测试环境的信息从数据库中删除;
S604:调度中心服务器返回注销成功的消息。
图7为本申请实施例提供的一种可选的测试能力表结构的示意图,如图7所示,该表用于存储调度中心服务器的测试能力信息。
其中,字段“test_suite_case_list”表示构成某测试能力的测试用例列表,即用测试用例列表来组建测试能力;
字段“test_rack_list”表示具有某测试能力的测试执行环境列表。
基于上述图7,图8本申请实施例提供的一种可选的测试任务的生成方法的流程示意图,如图8所示,该生成方法可以包括:
S801:获取查询系统支持的测试能力列表;
其中,测试能力列表中存储有用户可选择的测试能力,并且,每个测试能力还对应有所支持的测试用例。
S802:针对某一个测试能力进行测试用例选择;
S803:提交针对某一个测试能力的测试任务;
针对每个测试能力所支持的测试用例,用户可以从所支持的测试用例中进行选择,从而生成针对某一个测试能力测试任务。
S804:是否选择完毕?若为是,执行S805,若为否,执行S802;
具体来说,当选择完毕时生成测试任务,当选择未完毕时,继续选择以生成测试任务。
S805:停止。
下述表1为测试能力列表:
表1
基于上述表1的测试能力列表,用户可选择的测试能力为:[fader_kpi,Infra_fader_kpi,Infra_kpi,SIMULATOR_R&D_CMW500,test_suite_1,test_suite_2]。
从表1可知,Infra_fader_kpi当前没有测试环境支持,用户也可以针对该测试能力下发测试任务,但只能在该有支持该测试能力的测试环境注册后,才会被调度执行,其他测试能力当前都有1到多个测试环境支持,用户针对这些测试能力下发的测试任务会被立即排队调度。
例如,用户针对测试能力fader_kpi下发测试任务时,用户可选的测试用例列表为[infra_kpi_with_fader_one_ue_one_cell_ping],用户选择其中一个或多个测试用例,用户指定调度优先级“priority”为9,形成的测试任务信息如下:
“priority”:9;
“selected_case_list”:[infra_kpi_with_fader_one_ue_one_cell_ping];
“job_status”:‘NoRun’;
“job_create_time”:2021-04-20_08-25-30;
用户提交该测试任务到调度中心服务器中,调度中心服务器将该测试任务存储在测试任务表中。
如果用户还需要对其他测试能力进行测试任务提交,过程同理。
图9为本申请实施例提供的一种可选的测试方法的实例的流程示意图,如图9所示,该测试方法可以包括:
S901:调度中心服务器从数据库中获取所有测试环境的信息;
S902:调度中心服务器选取出注册状态和空闲状态的测试环境;
S903:遍历所有注册状态且空闲状态的测试环境;
S904:获取可被测试环境执行的高优先级的测试任务;
具体来说,查询测试环境表,获取“test_rack_status”=“idle”且“test_rack_available”=“online”的测试环境信息列表。遍历所有测试环境,查询测试任务表,分配高优先级测试任务给每个测试执行环境。
具体来说,根据两个指标进行测试任务排序,测试任务表中的“priority”和“job_create_time”,排序原则:字段“priority”取值越大调度优先级越高;对于相同优先级的测试任务,字段“job_create_time”越早调度优先级越高。
S905:调度中心服务器下发测试任务给测试环境;
S906:测试环境执行该测试任务;
S907:是否循环完毕?若为是,执行S901,若为否,执行S903。
举例来说,检查某测试环境是否可测试某测试任务的准则:判断测试任务中的测试用例列表信息是否为测试环境中测试能力的用例列表的子集,且判断该测试执行环境是最合适的,此处最合适的算法为:
测试任务中测试用例集为A,测试环境支持的测试用例集为S,A应该是S的子集,且A在S内的补集的元素数量最小。
具体地,数据库中有三个测试环境信息,如下:
测试环境-1,IP-1,[case1,case2,case3]
测试环境-2,IP-2,[case4,case5]
测试环境-3,IP-3,[case1,case2,case3,case4]
其中,调度中心服务器获取到新的测试任务为:[case1,case2],比较三个测试环境信息,图10a为本申请实施例提供的一种可选的测试任务-1与测试环境-1的结构示意图,图10b为本申请实施例提供的一种可选的测试任务-1与测试环境-2的结构示意图,图10c为本申请实施例提供的一种可选的测试任务-1与测试环境-3的结构示意图,如图10a-图10c所示,该测试用例列表为测试环境-1和测试环境-3的测试能力列表的子集,根据算法计算可得到:A在测试环境-1内的补集的元素数量为1,A在测试环境-3内的补集的元素数量为2。所以,将该测试任务分配给测试环境-1;这样的调度策略可避免提前占用只能用测试环境-3测试的其他测试任务。
通过上述实例,调度中心服务器利用测试任务和测试环境最佳适配算法,可提升测试环境并发调度执行效率,在有限的测试环境资源情况下,最大限度的增加测试资源的利用率;调度中心服务器根据测试任务优先级和创建时间进行任务调度排序,符合日常调度策略,灵活高效;调度中心服务器根据测试环境的状态进行任务调度,避免了一次性下发带来的危险。
在实际应用中,本实例除了可以用于版本回归测试,还可以将该实例进行扩展到其他测试上,例如,在外场测试中,可将测试环境部署在外场,如外场的静态位置或私家车后备箱等位置,并使每个测试环境和调度中心服务器建立通信链路,由调度中心服务器下发测试任务到各个测试环境上,这样可实现无人的外场测试,可大大节约测试成本。
也可在集成测试中应用,在测试环境空闲时,可对每个新发布的版本都进行更广泛的频率更高的回归测试,而不是原来的只测试几个固定的逻辑简单的集成测试用例,这样可以灵活地根据产品的实际测试情况,优化集成测试用例集合,一般来说,集成测试暴露出来的风险,解决它们需要的成本时较低的,可以为整个测试流程节省可观的成本。
本申请实施例提供了一种测试方法,获取无线通讯设备的测试任务,根据测试任务的测试用例,从预设的测试环境集中选取出包含测试任务的测试用例的测试环境,当选取出的测试环境的个数为至少两个时,将选取出的测试环境中剩余测试用例的个数最少的测试环境,确定为测试任务的测试环境,其中,剩余测试用例为选取出的测试环境中除了测试任务的测试用例以外的测试用例,测试任务的测试环境用于根据测试任务对无线通讯设备进行测试;也就是说,在本申请实施例中,首先根据获取到的测试任务的测试用例从预设的测试环境集中选取测试环境,然后,当选取出的测试环境的个数为至少两个时,将剩余测试用例中个数最少的测试环境确定为测试任务的测试环境,这样,测试任务的测试用例占有测试任务的测试环境中全部测试用例的比例最大,将占有全部测试用例的比例较小的测试环境留给占有比例较多的测试任务,如此,在有限的测试环境下,能够最大限度的增加测试环境的利用率,从而提高了测试环境的测试效率。
实施例二
基于同一的发明构思,本申请实施例提供一种服务器,图11为本申请实施例提供的一种可选的服务器的结构示意图,如图11所示,该服务器包括:
获取模块111,用于获取无线通讯设备的测试任务;
选取模块112,用于根据测试任务的测试用例,从预设的测试环境集中选取出包含测试任务的测试用例的测试环境;
确定模块113,用于当选取出的测试环境的个数为至少两个时,将选取出的测试环境中剩余测试用例的个数最少的测试环境,确定为测试任务的测试环境;
其中,剩余测试用例为选取出的测试环境中除了测试任务的测试用例以外的测试用例,测试任务的测试环境用于根据测试任务对无线通讯设备进行测试。
在一种可选的实施例中,获取模块111,具体用于:
接收至少两个测试任务;
根据至少两个测试任务的优先级,从至少两个测试任务中获取无线通讯设备的测试任务。
在一种可选的实施例中,获取模块111根据至少两个测试任务的优先级,从至少两个测试任务中获取无线通讯设备的测试任务中,包括:
获取至少两个测试任务中每个测试任务的级别;
根据每个测试任务的级别,确定每个测试任务的优先级;
将优先级最高的测试任务,确定为无线通讯设备的测试任务。
在一种可选的实施例中,获取模块111将优先级最高的测试任务,确定为无线通讯设备的测试任务中,包括:
当优先级最高的测试任务的个数为一个时,将优先级最高的测试任务,确定为无线通讯设备的测试任务;
当优先级最高的测试任务的个数为至少两个时,将优先级最高的测试任务中创建时间最早的测试任务,确定为无线通讯设备的测试任务。
在一种可选的实施例中,获取模块111根据至少两个测试任务的优先级,从至少两个测试任务中获取无线通讯设备的测试任务中,包括:
获取至少两个测试任务中每个测试任务的创建时间;
根据每个测试任务的创建时间,确定每个测试任务的优先级;
将优先级最高的测试任务,确定为无线通讯设备的测试任务。
在一种可选的实施例中,选取模块112,具体用于:
从预设的测试环境集中,将执行状态为空闲状态且注册状态为在线状态的测试环境确定为可选的测试环境;
根据测试任务的测试用例,从可选的测试环境中选取出包含测试任务的测试用例的测试环境。
在一种可选的实施例中,该服务器还用于:
接收来自测试环境的注册消息;
解析注册消息,得到测试环境的信息;
将测试环境的信息存储至数据库中,并生成注册消息的响应消息,返回注册消息的响应消息;
其中,注册消息的响应消息用于通知测试环境注册成功。
在一种可选的实施例中,该服务器还用于:
接收来自已经注册的测试环境的注销消息;
根据注销消息,确定测试环境的信息;
从数据库中删除测试环境的信息,并生成注销消息的响应消息,返回注销消息的响应消息;
其中,注销消息的响应消息用于通知测试环境注销成功。
在实际应用中,上述获取模块111,选取模块112和确定模块113可由位于服务器上的处理器实现,具体为中央处理器(CPU,Central Processing Unit)、微处理器(MPU,Microprocessor Unit)、数字信号处理器(DSP,Digital Signal Processing)或现场可编程门阵列(FPGA,Field Programmable Gate Array)等实现。
图12为本申请实施例提供的另一种服务器的结构示意图,如图12所示,本申请实施例提供了一种服务器1200,包括:
处理器121以及存储有所述处理器121可执行指令的存储介质122,所述存储介质122通过通信总线123依赖所述处理器121执行操作,当所述指令被所述处理器121执行时,执行上述实施例一所述测试方法。
需要说明的是,实际应用时,终端中的各个组件通过通信总线123耦合在一起。可理解,通信总线123用于实现这些组件之间的连接通信。通信总线123除包括数据总线之外,还包括电源总线、控制总线和状态信号总线。但是为了清楚说明起见,在图12中将各种总线都标为通信总线123。
本申请实施例提供了一种计算机存储介质,存储有可执行指令,当所述可执行指令被一个或多个处理器执行的时候,所述处理器执行如上述一个或多个实施例执行的所述的测试方法。
其中,计算机可读存储介质可以是磁性随机存取存储器(ferromagnetic randomaccess memory,FRAM)、只读存储器(Read Only Memory,ROM)、可编程只读存储器(Programmable Read-Only Memory,PROM)、可擦除可编程只读存储器(ErasableProgrammable Read-Only Memory,EPROM)、电可擦除可编程只读存储器(ElectricallyErasable Programmable Read-Only Memory,EEPROM)、快闪存储器(Flash Memory)、磁表面存储器、光盘、或只读光盘(Compact Disc Read-Only Memory,CD-ROM)等存储器。
本领域内的技术人员应明白,本申请的实施例可提供为方法、系统、或计算机程序产品。因此,本申请可采用硬件实施例、软件实施例、或结合软件和硬件方面的实施例的形式。而且,本申请可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器和光学存储器等)上实施的计算机程序产品的形式。
本申请是参照根据本申请实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
以上所述,仅为本申请的较佳实施例而已,并非用于限定本申请的保护范围。
Claims (11)
1.一种测试方法,其特征在于,包括:
获取无线通讯设备的测试任务;
根据所述测试任务的测试用例,从预设的测试环境集中选取出包含所述测试任务的测试用例的测试环境;
当选取出的测试环境的个数为至少两个时,将选取出的测试环境中剩余测试用例的个数最少的测试环境,确定为所述测试任务的测试环境;
其中,所述剩余测试用例为所述选取出的测试环境中除了所述测试任务的测试用例以外的测试用例,所述测试任务的测试环境用于根据所述测试任务对所述无线通讯设备进行测试。
2.根据权利要求1所述的方法,其特征在于,所述获取无线通讯设备的测试任务,包括:
接收至少两个测试任务;
根据所述至少两个测试任务的优先级,从所述至少两个测试任务中获取所述无线通讯设备的测试任务。
3.根据权利要求2所述的方法,其特征在于,所述根据所述至少两个测试任务的优先级,从所述至少两个测试任务中获取所述无线通讯设备的测试任务,包括:
获取所述至少两个测试任务中每个测试任务的级别;
根据所述每个测试任务的级别,确定所述每个测试任务的优先级;
将优先级最高的测试任务,确定为所述无线通讯设备的测试任务。
4.根据权利要求3所述的方法,其特征在于,所述将优先级最高的测试任务,确定为所述无线通讯设备的测试任务,包括:
当优先级最高的测试任务的个数为一个时,将优先级最高的测试任务,确定为所述无线通讯设备的测试任务;
当优先级最高的测试任务的个数为至少两个时,将优先级最高的测试任务中创建时间最早的测试任务,确定为所述无线通讯设备的测试任务。
5.根据权利要求2所述的方法,其特征在于,所述根据所述至少两个测试任务的优先级,从所述至少两个测试任务中获取所述无线通讯设备的测试任务,包括:
获取所述至少两个测试任务中每个测试任务的创建时间;
根据所述每个测试任务的创建时间,确定所述每个测试任务的优先级;
将优先级最高的测试任务,确定为所述无线通讯设备的测试任务。
6.根据权利要求1所述的方法,其特征在于,所述根据所述测试任务的测试用例,从预设的测试环境集中选取出包含所述测试任务的测试用例的测试环境,包括:
从预设的测试环境集中,将执行状态为空闲状态且注册状态为在线状态的测试环境确定为可选的测试环境;
根据所述测试任务的测试用例,从所述可选的测试环境中选取出包含所述测试任务的测试用例的测试环境。
7.根据权利要求1所述的方法,其特征在于,所述方法还包括:
接收来自测试环境的注册消息;
解析所述注册消息,得到所述测试环境的信息;
将所述测试环境的信息存储至数据库中,并生成所述注册消息的响应消息,返回所述注册消息的响应消息;
其中,所述注册消息的响应消息用于通知所述测试环境注册成功。
8.根据权利要求1所述的方法,其特征在于,所述方法还包括:
接收来自已经注册的测试环境的注销消息;
根据所述注销消息,确定所述测试环境的信息;
从数据库中删除所述测试环境的信息,并生成所述注销消息的响应消息,返回所述注销消息的响应消息;
其中,所述注销消息的响应消息用于通知所述测试环境注销成功。
9.一种服务器,其特征在于,包括:
获取模块,用于获取无线通讯设备的测试任务;
选取模块,用于根据所述测试任务的测试用例,从预设的测试环境集中选取出包含所述测试任务的测试用例的测试环境;
确定模块,用于当选取出的测试环境的个数为至少两个时,将选取出的测试环境中剩余测试用例的个数最少的测试环境,确定为所述测试任务的测试环境;
其中,所述剩余测试用例为所述选取出的测试环境中除了所述测试任务的测试用例以外的测试用例,所述测试任务的测试环境用于根据所述测试任务对所述无线通讯设备进行测试。
10.一种服务器,其特征在于,包括:
处理器以及存储有所述处理器可执行指令的存储介质,所述存储介质通过通信总线依赖所述处理器执行操作,当所述指令被所述处理器执行时,执行上述的权利要求1至8任一项所述的测试方法。
11.一种计算机存储介质,其特征在于,存储有可执行指令,当所述可执行指令被一个或多个处理器执行的时候,所述处理器执行如权利要求1至8任一项所述的测试方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110756103.0A CN113596871A (zh) | 2021-07-05 | 2021-07-05 | 一种测试方法、服务器及计算机存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110756103.0A CN113596871A (zh) | 2021-07-05 | 2021-07-05 | 一种测试方法、服务器及计算机存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN113596871A true CN113596871A (zh) | 2021-11-02 |
Family
ID=78245771
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110756103.0A Pending CN113596871A (zh) | 2021-07-05 | 2021-07-05 | 一种测试方法、服务器及计算机存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113596871A (zh) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114301820A (zh) * | 2021-12-25 | 2022-04-08 | 江苏信而泰智能装备有限公司 | 测试端口预约方法、装置、设备及可读存储介质 |
CN114356750A (zh) * | 2021-12-10 | 2022-04-15 | 深圳市捷视飞通科技股份有限公司 | 测试方法、装置、计算机设备和存储介质 |
CN117827376A (zh) * | 2023-12-29 | 2024-04-05 | 摩尔线程智能科技(成都)有限责任公司 | Gpu测试任务调度方法及装置、电子设备和存储介质 |
Citations (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20090240987A1 (en) * | 2008-03-20 | 2009-09-24 | Microsoft Corporation | Test amplification for datacenter applications via model checking |
US20170270036A1 (en) * | 2016-03-15 | 2017-09-21 | Wipro Limited | Method and system for performing regression integration testing |
CN107402880A (zh) * | 2016-05-20 | 2017-11-28 | 腾讯科技(北京)有限公司 | 一种测试方法及电子设备 |
CN107741904A (zh) * | 2017-09-14 | 2018-02-27 | 平安科技(深圳)有限公司 | 测试机自动配置方法、装置、设备及存储介质 |
US20180060460A1 (en) * | 2016-09-01 | 2018-03-01 | Paypal, Inc. | Simulating a Production Environment Using Distributed Computing Technologies |
WO2018066040A1 (ja) * | 2016-10-03 | 2018-04-12 | 株式会社日立製作所 | 管理計算機及びテスト環境決定方法 |
CN108694123A (zh) * | 2018-05-14 | 2018-10-23 | 中国平安人寿保险股份有限公司 | 一种回归测试方法、计算机可读存储介质及终端设备 |
WO2019134113A1 (zh) * | 2018-01-05 | 2019-07-11 | 深圳市汇顶科技股份有限公司 | 自动化测试方法及系统 |
CN112559316A (zh) * | 2020-09-03 | 2021-03-26 | 中国银联股份有限公司 | 软件测试方法和设备、计算机存储介质以及服务器 |
-
2021
- 2021-07-05 CN CN202110756103.0A patent/CN113596871A/zh active Pending
Patent Citations (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20090240987A1 (en) * | 2008-03-20 | 2009-09-24 | Microsoft Corporation | Test amplification for datacenter applications via model checking |
US20170270036A1 (en) * | 2016-03-15 | 2017-09-21 | Wipro Limited | Method and system for performing regression integration testing |
CN107402880A (zh) * | 2016-05-20 | 2017-11-28 | 腾讯科技(北京)有限公司 | 一种测试方法及电子设备 |
US20180060460A1 (en) * | 2016-09-01 | 2018-03-01 | Paypal, Inc. | Simulating a Production Environment Using Distributed Computing Technologies |
WO2018066040A1 (ja) * | 2016-10-03 | 2018-04-12 | 株式会社日立製作所 | 管理計算機及びテスト環境決定方法 |
CN107741904A (zh) * | 2017-09-14 | 2018-02-27 | 平安科技(深圳)有限公司 | 测试机自动配置方法、装置、设备及存储介质 |
WO2019134113A1 (zh) * | 2018-01-05 | 2019-07-11 | 深圳市汇顶科技股份有限公司 | 自动化测试方法及系统 |
CN108694123A (zh) * | 2018-05-14 | 2018-10-23 | 中国平安人寿保险股份有限公司 | 一种回归测试方法、计算机可读存储介质及终端设备 |
CN112559316A (zh) * | 2020-09-03 | 2021-03-26 | 中国银联股份有限公司 | 软件测试方法和设备、计算机存储介质以及服务器 |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114356750A (zh) * | 2021-12-10 | 2022-04-15 | 深圳市捷视飞通科技股份有限公司 | 测试方法、装置、计算机设备和存储介质 |
CN114301820A (zh) * | 2021-12-25 | 2022-04-08 | 江苏信而泰智能装备有限公司 | 测试端口预约方法、装置、设备及可读存储介质 |
CN117827376A (zh) * | 2023-12-29 | 2024-04-05 | 摩尔线程智能科技(成都)有限责任公司 | Gpu测试任务调度方法及装置、电子设备和存储介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN113596871A (zh) | 一种测试方法、服务器及计算机存储介质 | |
CN109656725B (zh) | 消息消费者切换方法、装置、存储介质及电子设备 | |
CN112631919B (zh) | 一种对比测试方法、装置、计算机设备及存储介质 | |
CN110413308B (zh) | 软件运维方法、装置、设备及计算机存储介质 | |
CN112905451B (zh) | 应用程序的自动化测试方法及装置 | |
CN107203464B (zh) | 业务问题的定位方法以及装置 | |
CN106021512A (zh) | 一种页面刷新方法及装置 | |
CN110851324A (zh) | 基于日志的巡检处理方法、装置以及电子设备、存储介质 | |
CN111090401B (zh) | 存储设备性能预测方法及装置 | |
CN108733545B (zh) | 一种压力测试方法及装置 | |
CN114546387B (zh) | 一种服务编排脚本执行系统及方法 | |
CN106933857B (zh) | 一种数据仓库中任务的调度方法、装置 | |
CN111262747B (zh) | 基于物联网的设备入网控制方法及物联网平台 | |
CN115687333B (zh) | 一种v2x大数据生命周期管理方法及装置 | |
CN106598721B (zh) | 媒资数据流转方法及装置 | |
CN110909072A (zh) | 一种数据表建立方法、装置及设备 | |
CN112637206B (zh) | 一种业务数据主动获取方法和系统 | |
CN113407331B (zh) | 一种任务处理的方法、装置及存储介质 | |
CN109558222A (zh) | 批量业务进程监控方法、装置、计算机及可读存储介质 | |
CN112395119B (zh) | 异常数据处理方法、装置、服务器及存储介质 | |
CN112181823A (zh) | 测试脚本的执行方法、装置、服务器、电子设备及介质 | |
CN107465762B (zh) | 一种分布式存储系统的测试方法及系统 | |
CN113296945A (zh) | 一种持续集成方法、系统、设备及计算机可读存储介质 | |
CN115878448A (zh) | 数据库测试方法、分布式数据库、存储介质 | |
CN113256174A (zh) | 异常订单处理方法、装置、存储介质及设备 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
WD01 | Invention patent application deemed withdrawn after publication | ||
WD01 | Invention patent application deemed withdrawn after publication |
Application publication date: 20211102 |