CN114297058B - 一种测试方法及装置 - Google Patents
一种测试方法及装置 Download PDFInfo
- Publication number
- CN114297058B CN114297058B CN202111594025.5A CN202111594025A CN114297058B CN 114297058 B CN114297058 B CN 114297058B CN 202111594025 A CN202111594025 A CN 202111594025A CN 114297058 B CN114297058 B CN 114297058B
- Authority
- CN
- China
- Prior art keywords
- test
- interface
- parameter
- parameters
- routing rule
- 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.)
- Active
Links
- 238000010998 test method Methods 0.000 title description 7
- 238000012360 testing method Methods 0.000 claims abstract description 448
- 230000000977 initiatory effect Effects 0.000 claims abstract description 15
- 238000000034 method Methods 0.000 claims description 40
- 238000012545 processing Methods 0.000 claims description 10
- 238000013522 software testing Methods 0.000 abstract description 2
- 238000010586 diagram Methods 0.000 description 13
- 230000008569 process Effects 0.000 description 12
- 238000004590 computer program Methods 0.000 description 9
- 230000006870 function Effects 0.000 description 7
- 230000004048 modification Effects 0.000 description 3
- 238000012986 modification Methods 0.000 description 3
- 230000003287 optical effect Effects 0.000 description 3
- 230000005540 biological transmission Effects 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 230000007547 defect Effects 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 230000004044 response Effects 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
Images
Landscapes
- Debugging And Monitoring (AREA)
Abstract
本发明公开了一种测试方法及装置,涉及软件测试技术领域,主要目的在于提高不同测试环境对同一接口调用的便利性;主要技术方案包括:在接收到针对目标接口的接口调用请求的情况下,确定所述接口调用请求携带的第一测试参数,其中,所述第一测试参数用于反映发起所述接口调用请求的客户端的测试环境;将目标接口的多个路由规则各自对应的第二测试参数分别与所述第一测试参数进行匹配,其中,不同的路由规则适用于不同的测试环境,所述第二测试参数用于反映对应的路由规则适用的测试环境;在存在与所述第一测试参数匹配的第二测试参数的情况下,将匹配的第二测试参数对应的路由规则转发至测试系统。
Description
技术领域
本发明涉及软件测试技术领域,特别是涉及一种测试方法及装置。
背景技术
软件测试,主要用于发现程序或是系统的错误和缺陷,其是软件质量验证的唯一可靠手段,是提升软件产品稳定性的重要途径。
软件开发过程中需要不断的进行测试,测试人员在对软件产品进行诸如业务功能、回归等测试时,需要调用测试系统的接口,以在测试系统上完成相应的测试。测试系统的接口的测试参数需要与测试人员所用客户端的测试环境相应一致,否则将不能调用接口。因此不同测试环境下的测试人员在调用接口时,需要将接口的测试参数修改为与其测试环境相一致。
现有的这种测试方式下,不同测试环境下的测试人员调用接口时,均需要对接口的测试参数进行修改,测试参数修改量大,时间成本较多。因此,不同测试环境对同一接口的调用较为不便。
发明内容
有鉴于此,本发明提出了一种测试方法及装置,主要目的在于实现提高不同测试环境对同一接口调用的便利性。
为了达到上述目的,本发明主要提供如下技术方案:
第一方面,本发明提供了一种测试方法,该方法包括:
在接收到针对目标接口的接口调用请求的情况下,确定所述接口调用请求携带的第一测试参数,其中,所述第一测试参数用于反映发起所述接口调用请求的客户端的测试环境;
将所述目标接口的多个路由规则各自对应的第二测试参数分别与所述第一测试参数进行匹配,其中,不同的路由规则适用于不同的测试环境,所述第二测试参数用于反映对应的路由规则适用的测试环境;
在存在与所述第一测试参数匹配的第二测试参数的情况下,将匹配的第二测试参数对应的路由规则转发至测试系统。
第二方面,本发明提供了一种测试装置,该装置包括:
确定单元,用于在接收到针对目标接口的接口调用请求的情况下,确定所述接口调用请求携带的第一测试参数,其中,所述第一测试参数用于反映发起所述接口调用请求的客户端的测试环境;
匹配单元,用于将所述目标接口的多个路由规则各自对应的第二测试参数分别与所述第一测试参数进行匹配,其中,不同的路由规则适用于不同的测试环境,所述第二测试参数用于反映对应的路由规则适用的测试环境;
转发单元,用于在存在与所述第一测试参数匹配的第二测试参数的情况下,将匹配的第二测试参数对应的路由规则转发至测试系统。
第三方面,本发明提供了一种计算机可读存储介质,所述存储介质包括存储的程序,其中,在所述程序运行时控制所述存储介质所在设备执行第一方面所述的测试方法。
第四方面,本发明提供了一种存储管理设备,所述存储管理设备包括:
存储器,用于存储程序;
处理器,耦合至所述存储器,用于运行所述程序以执行第一方面所述的测试方法。
借由上述技术方案,本发明提供的测试方法及装置,在接收到针对目标接口的接口调用请求的情况下,确定接口调用请求携带的能够反映发起接口调用请求的客户端的测试环境的第一测试参数。将目标接口的多个路由规则各自对应的第二测试参数分别与第一测试参数进行匹配。在存在与第一测试参数匹配的第二测试参数的情况下,将匹配的第二测试参数对应的路由规则转发至测试系统。可见,本发明提供的方案中为测试系统的接口设置多个路由规则,每一个路由规则均有其适用的测试环境。在一个测试环境下的客户端调用接口时,无需将接口的测试参数修改为与其测试环境相一致,直接使用与其测试环境相应的路由规则,即可完成接口的调用。不同的路由规则适用于不同的测试环境,不同测试环境下的客户端调用接口均无需修改接口的测试参数,因此本发明提供的方案能够提高不同测试环境对同一接口调用的便利性。
上述说明仅是本发明技术方案的概述,为了能够更清楚了解本发明的技术手段,而可依照说明书的内容予以实施,并且为了让本发明的上述和其它目的、特征和优点能够更明显易懂,以下特举本发明的具体实施方式。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1示出了本发明一个实施例提供的一种测试方法的流程图;
图2示出了本发明另一个实施例提供的一种测试方法的流程图;
图3示出了本发明一个实施例提供的一种路由规则配置页面示意图;
图4示出了本发明一个实施例提供的一种测试方法的示意图;
图5示出了本发明另一个实施例提供的一种测试方法的示意图;
图6示出了本发明一个实施例提供的一种测试装置的结构示意图;
图7示出了本发明另一个实施例提供的一种测试装置的结构示意图。
具体实施方式
下面将参照附图更加详细地描述本公开的示例性实施例。虽然附图中显示了本公开的示例性实施例,然而应当理解,可以以各种形式实现本公开而不应被这里阐述的实施例所限制。相反,提供这些实施例是为了能够更透彻地理解本公开,并且能够将本公开的范围完整的传达给本领域的技术人员。
在实际应用中,为了提升软件产品稳定性,在软件产品的开发过程中需要不断的对其进行测试。在对软件产品进行诸如业务功能、回归等测试时,需要调用测试系统的接口,以在测试系统上完成相应的测试。测试系统的接口的测试参数需要与被测试客户端的测试环境相一致,否则将不能调用接口完成测试。因此不同测试环境下的被测试客户端调用接口时,需要将接口的测试参数修改为与被测试客户端的测试环境相一致。
示例性的,客户端1对应测试环境1,在客户端1需要测试时,测试系统的接口的测试参数修改为与测试环境1相应,然后调用接口,以使测试系统完成测试。待测试系统完成针对客户端1发起的测试后,将测试系统的接口的测试参数修改为与客户端2相应,然后调用修改过测试参数的接口,以使测试系统完成客户端2发起的测试。
现有的这种测试方式下,不同测试环境下的客户端调用接口时,均需要对接口的测试参数进行修改,测试参数修改量大,修改时间成本较多。因此,不同测试环境对同一接口的调用较为不便。为了提高不同测试环境对同一接口调用的便利性,本发明实施例提供了一种测试方法及装置,以满足不同测试环境对同一个接口的不同响应诉求。下面对本发明实施例提供的测试方法及装置进行具体说明:
如图1所示,本发明实施例提供了一种测试方法,该方法主要包括:
101、在接收到针对目标接口的接口调用请求的情况下,确定所述接口调用请求携带的第一测试参数,其中,所述第一测试参数用于反映发起所述接口调用请求的客户端的测试环境。
目标接口为测试系统对应的接口,客户端在进行测试时,需要调用该目标接口,才能够完成相应的测试。接口调用请求是在存在功能或回归等测试需求时,被测试客户端发起的。接口调用请求中携带有第一测试参数,第一测试参数用于反映发起接口调用请求的客户端的测试环境。
为了确定接口调用请求是否能够调用测试系统的目标接口,则在接收到针对目标接口的接口调用请求的情况下,需要确定第一接口调用请求携带的第一测试参数。
下面对确定接口调用请求携带的第一测试参数的具体过程进行说明,该确定方法为:首先确定多个路由规则各自对应的第二测试参数所涉及的参数类型,然后将接口调用请求携带的参数中对应于参数类型的参数确定为第一测试参数。
多个路由规则是针对目标接口预先设置的,其中,每一个路由规则均存在其各自对应的第二测试参数,不同的路由规则适用于不同的测试环境。第二测试参数用于反映对应的路由规则适用的测试环境。路由规则的设置目的在于,预先为测试系统的接口设置适用于多种测试环境下的测试参数,在不同测试环境下的客户端调用接口时,无需将接口的测试参数修改为与其测试环境相一致,直接使用与其测试环境相应的路由规则,即可完成接口的调用。当任一路由规则转发至测试系统时,测试系统便可基于路由规则中的第二测试参数完成其适用的测试环境的测试。第二测试参数包括如下内容中的一种或多种:系统配置参数、客户端请求参数、测试输出结果、转发地址。相应的,第二测试参数对应的参数类型为系统配置参数、客户端请求参数、测试输出结果、转发地址。
接收到的接口调用请求中可能包括一些对于调用接口无用处的参数,因此,需要确定多个路由规则各自对应的第二测试参数所涉及的参数类型,将接口调用请求携带的参数中对应于参数类型的参数确定为第一测试参数,以基于第一测试参数选取路由规则。
示例性的,路由规则由如下三部分组成:规则条件、测试输出结果、转发地址,其中,规则条件为系统配置参数或客户端请求参数。其中,客户端请求参数可以包括如下中的一种或多种:http请求信息的请求头、http请求信息的请求行、http请求信息的参数。
比如,存在路由规则1,路由规则1包括:规则条件“os.name=Linux&&getRemoteAddr()=10.193.199.101&&getParameter("SERVICE_ID")=
TFDVirtualCardAuth”、测试输出结果“{"code":"101","msg":"密码错误15次,锁定10分钟"}”、转发地址http://10.193.199.201。确定路由规则1的第二测试参数所涉及的参数类型包括转发地址、测试输出结果、系统配置参数、客户端请求参数。接口调用请求中存在系统配置参数linux,则将linux提取为第一测试参数。
需要说明的是,不同的参数类型具有不同的第一测试参数获取方法。如果参数类型是系统配置参数“system parameters”,则采用System.getProperty()方法获取接口调用请求中对应系统配置参数的第一测试测试参数。如果规则参数类型是客户端请求参数“clent parameters”,则通过HttpServletRequest的方法获取接口调用请求中对应客户端请求参数的第一测试测试参数。但当参数类型是测试输出结果、转发地址时,需要根据Content-type不同针对接口调用请求做不同处理,分别采用getParameterMap()、getInputStream()、getReader()从selvlet中request对象得到接口调用请求中的数据,然后获取第一测试参数。示例性的,通过System.getProperty(os.name)获取操作系统名称,通过getRemoteAddr()获取主机IP,通过getParameter(“SERVICE_ID”)获取SERVICE_ID的参数值。
102、将所述目标接口的多个路由规则各自对应的第二测试参数分别与所述第一测试参数进行匹配,其中,不同的路由规则适用于不同的测试环境,所述第二测试参数用于反映对应的路由规则适用的测试环境。
对于一个接口调用请求来说,仅有其携带的第一测试参数与一个路由规则的第二测试参数匹配时,发起其的客户端才可调用目标接口,因此需要将多个路由规则各自对应的第二测试参数分别与第一测试参数进行匹配,来确定该接口调用请求是否能够调用目标接口。
将多个路由规则各自对应的第二测试参数分别与第一测试参数进行匹配的具体过程可以为:针对每一个路由规则均执行:确定路由规则中是否存在与第一测试参数相同的第二测试参数;若存在,则说明第一测试参数全部包含在第二测试参数中,第一测试参数与第二测试测试参数匹配;若不存在,则说明第一测试参数中部分或全部没有包含在第二测试参数中,则第一测试参数与第二测试参数不匹配。
103、在存在与所述第一测试参数匹配的第二测试参数的情况下,将匹配的第二测试参数对应的路由规则转发至测试系统。
在存在与第一测试参数匹配的第二测试参数的情况下,则说明发起接口调用请求的客户端可以调用目标接口,则将与第一测试参数匹配的第二测试参数对应的路由规则转发至测试系统,以供测试系统基于路由规则中的第二测试参数完成相应的测试。测试系统基于路由规则中的第二测试参数完成相应的测试的具体过程可以为:测试系统中包括有多个测试子系统,每一个测试子系统有其对应的目标测试环境。选取目标测试环境与路由规则相应的测试子系统,由所选取的测试子系统利用路由规则中的第二测试参数完成相应的测试。
本发明实施例提供的测试方法,在接收到针对目标接口的接口调用请求的情况下,确定接口调用请求携带的能够反映发起接口调用请求的客户端的测试环境的第一测试参数。将目标接口的多个路由规则各自对应的第二测试参数分别与第一测试参数进行匹配。在存在与第一测试参数匹配的第二测试参数的情况下,将匹配的第二测试参数对应的路由规则转发至测试系统。可见,本发明提供的方案中为测试系统的接口设置多个路由规则,每一个路由规则均有其适用的测试环境。在一个测试环境下的客户端调用接口时,无需将接口的测试参数修改为与其测试环境相一致,直接使用与其测试环境相应的路由规则,即可完成接口的调用。不同的路由规则适用于不同的测试环境,不同测试环境下的客户端调用接口均无需修改接口的测试参数,因此本发明提供的方案能够提高不同测试环境对同一接口调用的便利性。
进一步的,根据图1所示的方法,本发明的另一个实施例还提供了一种测试方法,如图2所示,该方法主要包括:
201、在接收到针对目标接口的接口调用请求的情况下,确定所述接口调用请求携带的第一测试参数。
本实施例中所述的第一测试参数用于反映发起所述接口调用请求的客户端的测试环境。所述第一测试参数包括如下内容中的一种或多种:系统配置参数、客户端请求参数、测试输出结果、转发地址。
202、将多个路由规则各自对应的第二测试参数分别与所述第一测试参数进行匹配,执行步骤203或步骤210。
本实施例中所述的第二测试参数用于反映对应的路由规则适用的测试环境。所述第二测试参数包括如下内容中的一种或多种:系统配置参数、客户端请求参数、测试输出结果、转发地址。
203、在存在与所述第一测试参数匹配的第二测试参数的情况下,确定与第一测试参数匹配的第二测试参数对应的路由规则。
204、确定需要转发至测试系统的目标路由规则的数量,其中,一个所述目标路由规则对应一个已接收的接口调用请求,执行步骤205或步骤208。
205、在需要转发至所述测试系统的目标路由规则的数量大于1的情况下,确定各所述目标路由规则的优先级顺序。
206、确定各所述目标路由规则的优先级顺序。
由于测试系统在同一时间仅能完成一个测试,因此需要确定各目标路由规则的优先级顺序,以让优先级较高的目标路由规则优先完成测试。
确定各目标路由规则的优先级顺序的具体方法为:确定各目标路由规则对应的优先级标号,其中,优先级标号预设在目标路由规则中,优先级标号表示路由规则的重要程度。然后基于优先级标号确定各目标路由规则的优先级顺序。当优先级标号预设在目标路由规则中时,目标路由规则由如下四部分组成:规则条件、测试输出结果、转发地址、优先级标号。
207、按照所述优先级顺序将各所述目标路由规则转发至所述测试系统。
按照优先级顺序将各目标路由规则转发至测试系统,可以保证重要的路由规则优先被测试系统测试。
按照优先级顺序将各目标路由规则转发至测试系统的方法存在如下两种:
第一种,当任一目标路由规则转发至测试系统后,若监测到测试指令,则将优先级紧邻其后的目标路由规则转发至测试系统,其中,测试指令是测试系统完成针对目标路由规则的测试的情况下反馈的。
由于测试系统在同一时间仅能完成一个测试,因此在任一目标路由规则转发至测试系统后,需要监测测试系统反馈的测试指令,该测试指令是测试系统完成针对目标路由规则的测试的情况下反馈的。若监测到测试指令则说明测试系统针对目标路由规则的测试已经完成,则将优先级紧邻其后的目标路由规则转发至测试系统。
第二种,当任一目标路由规则转发至测试系统后,若监测到目标路由规则已转发至测试系统的累计时长达到预设时长,则将优先级紧邻其后的目标路由规则转发至测试系统。
当任一目标路由规则转发至测试系统后,若监测到目标路由规则已转发至测试系统的累计时长达到预设时长,说明测试系统已完成针对该目标路由规则的测试或由于一些异常针对该目标路由规则的测试已经终止,为了保证其他的路由规则可以执行测试,则将优先级紧邻其后的目标路由规则转发至测试系统。
需要说明的是,预设时长为测试系统完成多个路由规则测试所得的经验数据,在预设时长内,测试时长可完成针对一个路由规则的测试。
208、在需要转发至所述测试系统的目标路由规则的数量为1的情况下,将目标路由规则转发至测试系统。
在需要转发至所述测试系统的目标路由规则的数量为1的情况下,说明测试系统当前仅有一个待测试任务,待测试任务即为与第一测试参数匹配的第二测试参数对应的路由规则。因此直接将与第一测试参数匹配的第二测试参数对应的路由规则转发至测试系统即可。
209、在目标路由规则具有测试结果返回需求的情况下,获取所述测试系统执行与目标路由规则对应的测试后的测试结果,并将所述测试结果反馈给所述客户端。
具有测试结果返回需求的目标路由规则,即需要将测试结果反馈给发起接口调用请求的客户端,以供客户端的业务人员进行业务处理。因此,对于具有测试结果返回需求的目标路由规则,获取测试系统执行与其相应的测试后的测试结果,并将测试结果反馈给发起接口调用请求的客户端。
210、在不存在与所述第一测试参数匹配的第二测试参数的情况下,将所述接口调用请求转发至业务系统。
在多个路由规则中不存在与接口调用请求的第一测试参数相匹配的路由规则时,说明测试系统不能完成与接口调用请求相应的测试。为了在一个测试环境不可用时可以快速切换到可用环境上,保证接口调用请求可以执行相应的测试,则在多个路由规则中不存在与接口调用请求的第一测试参数相匹配的路由规则时,将接口调用请求转发至业务系统,以供业务系统基于接口调用请求完成相应的测试。
进一步的,根据图1和图2所示的方法,本发明的另一个实施例还提供了一种测试方法,该方法所涉及的过程为:为目标接口设置了三个路由规则,分别为路由规则1、路由规则2和路由规则3,下面以路由规则1为例说明路由规则的设置过程。如图3所示,图3为路由规则的设置窗口,业务人员在设置窗口中,填写如图3所示的第二测试参数,待填写完成后,点击提交按钮,则路由规则1设置完成。
如图4所示,接收了针对目标接口的四个接口调用请求request1至request4,其中,客户端A同时发起了接口调用请求request1和接口调用请求request4,客户端B发起了接口调用请求request2,客户端C发起了接口调用请求request3。request1对应的第一测试参数为“linux、IP101、接口Auth”,request2对应的第一测试参数为“linux、IP102、接口Auth”,request3对应的第一测试参数为“windows、IP101、接口Auth”,request4对应的第一测试参数为“linux、IP101、接口refund”。接口调用请求request1至request4经过图4中所示的匹配环节与路由规则1至3匹配。经过匹配后,仅request1存在匹配的路由规则1,而request2至request4没有匹配的路由规则。故将路由规则1转发至测试系统,其余的request2至request4转发至业务系统。测试系统在测试结束后,可反馈针对路由规则1中“{“code”:“101”,“msg”:“密码错误15次,锁定10分钟”}”的测试结果。业务系统可反馈针对request2至request4中真实业务系统的测试结果。
进一步的,根据图1和图2所示的方法,本发明的另一个实施例还提供了一种测试方法,如图5所示,为目标接口设置了三个路由规则,分别为路由规则1、路由规则2和路由规则3。接收了三个接口调用请求request1至request3,其中,客户端A同时发起了接口调用请求request1,客户端B发起了接口调用请求request2,客户端C发起了接口调用请求request3,三个接口调用请求的测试环境不同。在接收到接口调用请求request1至request3之后,分别确定接口调用请求request1至request3携带的第一测试参数。在图5中所示的匹配环节,对将三个路由规则各自对应的第二测试参数分别与各接口调用请求的第一测试参数进行匹配。经过匹配后,确定接口调用请求request1与路由规则1匹配,接口调用请求request2与路由规则2匹配,而接口调用请求request3无匹配的路由规则。在图5中用ture表示存在匹配路由规则的接口调用请求的处理路径,用false表示不存在匹配路由规则的接口调用请求的处理路径。可见,路由规则1和路由规则2进行优先级确定,确定出的优先级顺序为路由规则1的优先级大于路由规则2,然后根据优先级顺序,先将路由规则1转发给测试系统,待测试系统执行完与路由规则1相应的测试后,再将路由规则2转发给测试系统。接口调用请求request3无匹配的路由规则,则直接将接口调用请求request3转发至业务系统。
进一步的,依据上述方法实施例,本发明的另一个实施例还提供了一种测试装置,如图6所示,所述装置包括:
确定单元31,在接收到针对目标接口的接口调用请求的情况下,确定所述接口调用请求携带的第一测试参数,其中,所述第一测试参数用于反映发起所述接口调用请求的客户端的测试环境;
匹配单元32,用于将所述目标接口的多个路由规则各自对应的第二测试参数分别与所述第一测试参数进行匹配,其中,不同的路由规则适用于不同的测试环境,所述第二测试参数用于反映对应的路由规则适用的测试环境;
转发单元33,用于在存在与所述第一测试参数匹配的第二测试参数的情况下,将匹配的第二测试参数对应的路由规则转发至测试系统。
本发明实施例提供的测试装置,在接收到针对目标接口的接口调用请求的情况下,确定接口调用请求携带的能够反映发起接口调用请求的客户端的测试环境的第一测试参数。将多个路由规则各自对应的第二测试参数分别与第一测试参数进行匹配。在存在与第一测试参数匹配的第二测试参数的情况下,将匹配的第二测试参数对应的路由规则转发至测试系统。可见,本发明提供的方案中为测试系统的接口设置多个路由规则,每一个路由规则均有其适用的测试环境。在一个测试环境下的客户端调用接口时,无需将接口的测试参数修改为与其测试环境相一致,直接使用与其测试环境相应的路由规则,即可完成接口的调用。不同的路由规则适用于不同的测试环境,不同测试环境下的客户端调用接口均无需修改接口的测试参数,因此本发明提供的方案能够提高不同测试环境对同一接口调用的便利性。
可选的,如图7所示,所述确定单元31包括:
第一确定模块311,用于确定所述多个路由规则各自对应的第二测试参数所涉及的参数类型;
第二确定模块312,用于将所述接口调用请求携带的参数中对应于所述参数类型的参数确定为所述第一测试参数。
可选的,如图7所示,所述转发单元33,还用于在不存在与所述第一测试参数匹配的第二测试参数的情况下,将所述接口调用请求转发至业务系统。
可选的,如图7所示,所述装置还包括:
反馈单元34,用于在转发单元33将匹配的第二测试参数对应的路由规则转发至测试系统之后,在所述路由规则具有测试结果返回需求的情况下,获取所述测试系统执行与所述路由规则对应的测试后的测试结果,并将所述测试结果反馈给所述客户端。
可选的,如图7所示,所述装置还包括:
排序单元35,用于在需要转发至所述测试系统的目标路由规则的数量大于1的情况下,确定各所述目标路由规则的优先级顺序,其中,一个所述目标路由规则对应一个已接收的接口调用请求;
所述转发单元33,用于按照所述优先级顺序将各所述目标路由规则转发至所述测试系统。
可选的,如图7所示,排序单元35,具体用于确定各所述目标路由规则对应的优先级标号,其中,所述优先级标号预设在所述目标路由规则中;基于所述优先级标号确定各所述目标路由规则的优先级顺序。
可选的,所述第一测试参数包括如下内容中的一种或多种:系统配置参数、客户端请求参数、测试输出结果、转发地址;
和/或,所述第二测试参数包括如下内容中的一种或多种:系统配置参数、客户端请求参数、测试输出结果、转发地址。
本发明实施例提供的测试装置中,各个功能模块运行过程中所采用的方法详解可以参见图1-图2方法实施例的对应方法详解,在此不再赘述。
进一步的,依据上述实施例,本发明的另一个实施例还提供了一种计算机可读存储介质,所述存储介质包括存储的程序,其中,在所述程序运行时控制所述存储介质所在设备执行图1和图2所述的测试方法。
进一步的,依据上述实施例,本发明的另一个实施例还提供了一种存储管理设备,所述存储管理设备包括:
存储器,用于存储程序;
处理器,耦合至所述存储器,用于运行所述程序以执行图1和图2所述的测试方法。
在上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述的部分,可以参见其他实施例的相关描述。
可以理解的是,上述方法及装置中的相关特征可以相互参考。另外,上述实施例中的“第一”、“第二”等是用于区分各实施例,而并不代表各实施例的优劣。
本领域内的技术人员应明白,本公开的实施例可提供为方法、系统、或计算机程序产品。因此,本公开的实施例可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本公开的实施例可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本申请是参照本公开的实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
在一个典型的配置中,计算设备包括一个或多个处理器(CPU)、输入/输出接口、网络接口和内存。
存储器可能包括计算机可读介质中的非永久性存储器,随机存取存储器(RAM)和/或非易失性内存等形式,如只读存储器(ROM)或闪存(flash RAM)。存储器是计算机可读介质的示例。
计算机可读介质包括永久性和非永久性、可移动和非可移动媒体可以由任何方法或技术来实现信息存储。信息可以是计算机可读指令、数据结构、程序的模块或其他数据。计算机的存储介质的例子包括,但不限于相变内存(PRAM)、静态随机存取存储器(SRAM)、动态随机存取存储器(DRAM)、其他类型的随机存取存储器(RAM)、只读存储器(ROM)、电可擦除可编程只读存储器(EEPROM)、快闪记忆体或其他内存技术、只读光盘只读存储器(CD-ROM)、数字多功能光盘(DVD)或其他光学存储、磁盒式磁带,磁带磁磁盘存储或其他磁性存储设备或任何其他非传输介质,可用于存储可以被计算设备访问的信息。按照本文中的界定,计算机可读介质不包括暂存电脑可读媒体(transitory media),如调制的数据信号和载波。
还需要说明的是,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、商品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、商品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括要素的过程、方法、商品或者设备中还存在另外的相同要素。
本领域技术人员应明白,本公开的实施例可提供为方法、系统或计算机程序产品。因此,本公开的实施例可采用完全硬件实施例、完全软件实施例或结合软件和硬件方面的实施例的形式。而且,本公开的实施例可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
Claims (7)
1.一种测试方法,所述方法应用于不同测试环境下的客户端对同一接口调用的场景下,其特征在于,所述方法包括:
在接收到针对目标接口的接口调用请求的情况下,确定所述接口调用请求携带的第一测试参数,其中,所述第一测试参数用于反映发起所述接口调用请求的客户端的测试环境;
将所述目标接口的多个路由规则各自对应的第二测试参数分别与所述第一测试参数进行匹配,其中,不同的路由规则适用于不同的测试环境,所述第二测试参数用于反映对应的路由规则适用的测试环境;
在存在与所述第一测试参数匹配的第二测试参数的情况下,将匹配的第二测试参数对应的路由规则转发至测试系统;
在不存在与所述第一测试参数匹配的第二测试参数的情况下,将所述接口调用请求转发至业务系统;
在将匹配的第二测试参数对应的路由规则转发至测试系统之前,所述方法还包括:
在需要转发至所述测试系统的目标路由规则的数量大于1的情况下,确定各所述目标路由规则的优先级顺序,其中,一个所述目标路由规则对应一个已接收的接口调用请求,其中,目标路由规则包括:规则条件、测试输出结果、转发地址、优先级标号;
按照所述优先级顺序将各所述目标路由规则转发至所述测试系统;
确定所述接口调用请求携带的第一测试参数,包括:
确定所述多个路由规则各自对应的第二测试参数所涉及的参数类型;
将所述接口调用请求携带的参数中对应于所述参数类型的参数确定为所述第一测试参数。
2.根据权利要求1所述的方法,其特征在于,确定各所述目标路由规则的优先级顺序,包括:
确定各所述目标路由规则对应的优先级标号,其中,所述优先级标号预设在所述目标路由规则中;
基于所述优先级标号确定各所述目标路由规则的优先级顺序。
3.根据权利要求1所述的方法,其特征在于,在将匹配的第二测试参数对应的路由规则转发至测试系统之后,所述方法还包括:
在所述路由规则具有测试结果返回需求的情况下,获取所述测试系统执行与所述路由规则对应的测试后的测试结果,并将所述测试结果反馈给所述客户端。
4.根据权利要求1-3中任一所述的方法,其特征在于,所述第一测试参数包括如下内容中的一种或多种:系统配置参数、客户端请求参数、测试输出结果、转发地址;
和/或,所述第二测试参数包括如下内容中的一种或多种:系统配置参数、客户端请求参数、测试输出结果、转发地址。
5.一种测试装置,所述装置应用于不同测试环境下的客户端对同一接口调用的场景下,其特征在于,所述装置包括:
确定单元,用于在接收到针对目标接口的接口调用请求的情况下,确定所述接口调用请求携带的第一测试参数,其中,所述第一测试参数用于反映发起所述接口调用请求的客户端的测试环境;
匹配单元,用于将所述目标接口的多个路由规则各自对应的第二测试参数分别与所述第一测试参数进行匹配,其中,不同的路由规则适用于不同的测试环境,所述第二测试参数用于反映对应的路由规则适用的测试环境;
转发单元,用于在存在与所述第一测试参数匹配的第二测试参数的情况下,将匹配的第二测试参数对应的路由规则转发至测试系统;
所述装置还包括:
排序单元,用于在需要转发至所述测试系统的目标路由规则的数量大于1的情况下,确定各所述目标路由规则的优先级顺序,其中,一个所述目标路由规则对应一个已接收的接口调用请求,其中,目标路由规则包括:规则条件、测试输出结果、转发地址、优先级标号;
所述转发单元,用于按照所述优先级顺序将各所述目标路由规则转发至所述测试系统;
所述确定单元,包括:
第一确定模块,用于确定所述多个路由规则各自对应的第二测试参数所涉及的参数类型;
第二确定模块,用于将所述接口调用请求携带的参数中对应于所述参数类型的参数确定为所述第一测试参数;
所述转发单元,还用于在不存在与所述第一测试参数匹配的第二测试参数的情况下,将所述接口调用请求转发至业务系统。
6.一种计算机可读存储介质,其特征在于,所述存储介质包括存储的程序,其中,在所述程序运行时控制所述存储介质所在设备执行权利要求1至权利要求4中任意一项所述的测试方法。
7.一种存储管理设备,其特征在于,所述存储管理设备包括:
存储器,用于存储程序;
处理器,耦合至所述存储器,用于运行所述程序以执行权利要求1至权利要求4中任意一项所述的测试方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111594025.5A CN114297058B (zh) | 2021-12-23 | 2021-12-23 | 一种测试方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111594025.5A CN114297058B (zh) | 2021-12-23 | 2021-12-23 | 一种测试方法及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN114297058A CN114297058A (zh) | 2022-04-08 |
CN114297058B true CN114297058B (zh) | 2023-03-24 |
Family
ID=80969324
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202111594025.5A Active CN114297058B (zh) | 2021-12-23 | 2021-12-23 | 一种测试方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN114297058B (zh) |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110147320A (zh) * | 2019-04-19 | 2019-08-20 | 平安普惠企业管理有限公司 | 接口测试方法、装置及电子设备 |
CN113377668A (zh) * | 2021-06-29 | 2021-09-10 | 南京苏宁软件技术有限公司 | 服务接口的自动化测试方法、装置和计算机设备 |
Family Cites Families (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR100725853B1 (ko) * | 2005-12-10 | 2007-06-08 | 한국전자통신연구원 | 다중 프로토콜 시험 장치 및 시험 방법 |
CN107748717A (zh) * | 2017-09-26 | 2018-03-02 | 深圳市牛鼎丰科技有限公司 | 接口自动化测试方法、装置、存储介质和计算机设备 |
CN110287096A (zh) * | 2019-05-20 | 2019-09-27 | 深圳壹账通智能科技有限公司 | H5前端页面测试方法、电子装置及计算机可读存储介质 |
CN113094255A (zh) * | 2020-01-08 | 2021-07-09 | 北京密境和风科技有限公司 | 数据接口的模拟测试方法、装置及系统 |
CN111343294A (zh) * | 2020-02-14 | 2020-06-26 | 京东数字科技控股有限公司 | 网络环境切换方法、装置、设备及计算机可读存储介质 |
CN112433935A (zh) * | 2020-11-17 | 2021-03-02 | 平安消费金融有限公司 | 测试方法、装置、电子设备及存储介质 |
CN112732372A (zh) * | 2021-01-18 | 2021-04-30 | 中国民航信息网络股份有限公司 | 服务调用方法、装置及服务器 |
-
2021
- 2021-12-23 CN CN202111594025.5A patent/CN114297058B/zh active Active
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110147320A (zh) * | 2019-04-19 | 2019-08-20 | 平安普惠企业管理有限公司 | 接口测试方法、装置及电子设备 |
CN113377668A (zh) * | 2021-06-29 | 2021-09-10 | 南京苏宁软件技术有限公司 | 服务接口的自动化测试方法、装置和计算机设备 |
Also Published As
Publication number | Publication date |
---|---|
CN114297058A (zh) | 2022-04-08 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN107122258B (zh) | 用于测试接口的状态码校验的方法及设备 | |
CN107104923B (zh) | 一种账号绑定和业务处理的方法及装置 | |
CN109299015B (zh) | 一种软件测试方法、装置及系统 | |
CN111191250B (zh) | 一种验证方法及装置、用于验证的装置、服务器和终端 | |
CN111124871A (zh) | 接口测试方法及装置 | |
CN115904959A (zh) | 软件集成和部署方法以及软件开发管理系统 | |
CN112671574B (zh) | 前后端联调方法、装置、代理设备及存储介质 | |
CN114363334A (zh) | 云系统及云桌面虚拟机的网络配置方法、装置及设备 | |
CN110309057B (zh) | 基于自动化脚本的流程性项目测试方法和相关设备 | |
CN114297058B (zh) | 一种测试方法及装置 | |
CN114691473A (zh) | 一种测试方法、装置与电子设备 | |
CN112559352A (zh) | 接口测试的方法、装置、设备及存储介质 | |
CN116756037A (zh) | 异常代码定位系统、方法、设备及计算机可读存储介质 | |
CN116383055A (zh) | 金融场景的测试方法和装置、处理器及电子设备 | |
CN115617668A (zh) | 一种兼容性测试方法、装置及设备 | |
CN110618943B (zh) | 安防服务测试方法、装置、电子设备及可读存储介质 | |
CN114489999A (zh) | 流水线任务的处理方法和装置、处理器及电子设备 | |
CN110297625B (zh) | 应用的处理方法及装置 | |
CN114844859B (zh) | 域名配置方法、装置、电子设备及存储介质 | |
CN111343042B (zh) | 一种dns解析的测试方法及测试系统 | |
CN112732362B (zh) | 跨国软件资源访问方法、装置、电子设备及存储介质 | |
CN117591393A (zh) | 一种基于http请求的进程测试的方法及设备 | |
CN117971680A (zh) | 一种验证容器化应用程序可用性的方法、系统、设备及介质 | |
CN114090357A (zh) | 一种硬盘性能测试方法、装置、电子设备及存储介质 | |
CN115858343A (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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |