CN110765024B - 模拟测试方法、装置、电子设备和计算机可读存储介质 - Google Patents
模拟测试方法、装置、电子设备和计算机可读存储介质 Download PDFInfo
- Publication number
- CN110765024B CN110765024B CN201911039191.1A CN201911039191A CN110765024B CN 110765024 B CN110765024 B CN 110765024B CN 201911039191 A CN201911039191 A CN 201911039191A CN 110765024 B CN110765024 B CN 110765024B
- Authority
- CN
- China
- Prior art keywords
- target service
- service
- test
- target
- simulation
- 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
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/36—Preventing errors by testing or debugging software
- G06F11/3668—Software testing
- G06F11/3672—Test management
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D30/00—Reducing energy consumption in communication networks
- Y02D30/70—Reducing energy consumption in communication networks in wireless communication networks
Abstract
本申请公开了一种模拟测试方法、装置、电子设备和计算机可读存储介质,涉及自动化测试领域。具体实现方案为:接收具有测试用例的测试请求,测试用例中包括路由计划参数;在调用目标服务之前,识别路由计划参数中是否包括目标服务的标识;在识别到目标服务的标识的情况下,调用目标服务的模拟服务,以测试目标服务。上述技术方案可以自动切换真实目标服务和模拟服务,提高自动化测试的效率。
Description
技术领域
本申请涉及一种服务器领域,尤其涉及一种服务器的自动化测试领域。
背景技术
在对后端业务系统的测试过程中,不但需要对下游服务做正常逻辑的功能验证,还需要对下游服务可能出现的各种异常情况进行测试,例如:返回数据错误,下游服务的网络连接超时等。当下游服务由第三方提供时,由于测试者没有控制权,需要请求第三方服务的模拟(Mock)服务来模拟异常场景。因此,在测试过程中会发生频繁切换下游真实服务和下游Mock服务的情况,极大地降低了自动化测试的执行效率。
发明内容
本申请实施例提供一种模拟测试方法、装置、电子设备和计算机可读存储介质,以解决相关技术存在的问题,技术方案如下:
第一方面,本申请实施例提供了一种模拟测试方法,包括:接收具有测试用例的测试请求,测试用例中包括路由计划参数;在调用目标服务之前,识别路由计划参数中是否包括目标服务的标识;在识别到目标服务的标识的情况下,调用目标服务的模拟服务,以测试目标服务。
上述技术方案通过在测试用例中增加路由计划参数,在调用目标服务之前,如果在路由计划参数中识别到目标服务的标识,则调用该目标服务的模拟服务,从而可以自动切换真实目标服务和模拟服务,提高自动化测试的效率。
在一种实施方式中,调用目标服务的模拟服务,包括:从路由计划参数中,获取与目标服务的标识关联的测试场景参数;向目标服务的模拟服务器发送模拟服务请求,模拟服务请求中包括测试场景参数。
上述技术方案通过在路由计划参数中设置与目标服务关联的测试场景参数,并将测试场景参数透传给模拟服务,从而提高测试场景的搭建效率。
在一种实施方式中,,识别路由计划参数中是否包括目标服务的标识,包括:遍历路由计划参数中的多个标识,确定多个标识中是否包括目标服务的标识。
上述技术方案可以实现对多个不同目标服务的模拟测试,只需要在路由计划参数中设置各目标服务分别对应的标识和测试场景参数即可。
在一种实施方式中,本申请实施的方法还包括:在未识别到目标服务的标识的情况下,调用目标服务。
上述技术方案可以实现在测试场景下正常调用非测试服务。
在一种实施方式中,调用目标服务,包括:确定提供目标服务的多个目标服务器;对多个目标服务器进行均衡处理,并调用各目标服务器。
上述技术方案可以实现多个目标服务器的负载均衡。
在一种实施方式中,本申请实施例的方法还包括:如果接收到对目标服务的客户端请求,则调用目标服务。
上述技术方案的后端业务系统可以实现非测试场景下,根据用户请求正常调用相应的目标服务。
第二方面,本申请实施例提供一种模拟测试方法,包括:确定需要测试的目标服务;在测试用例中设置路由计划参数,路由计划参数中包括目标服务的标识;向后端业务系统发送具有测试用例的测试请求,以使后端业务系统在调用目标服务之前,在识别到目标服务的标识的情况下,调用目标服务的模拟服务,以测试目标服务。
在一种实施方式中,本申请实施例的方法还包括:确定目标服务的测试场景参数;在路由计划参数中设置测试场景参数,并将测试场景参数与目标服务的标识相关联。
第三方面,本申请实施例提供一种模拟测试装置,包括:测试请求接收模块,用于接收具有测试用例的测试请求,测试用例中包括路由计划参数;识别模块,用于在调用目标服务之前,识别路由计划参数中是否包括目标服务的标识;模拟服务调用模块,用于在识别到目标服务的标识的情况下,调用目标服务的模拟服务,以测试目标服务。
在一种实施方式中,服务调用模块包括:测试场景参数获取单元,用于从路由计划参数中,获取与目标服务的标识关联的测试场景参数;模拟服务请求发送单元,用于向目标服务的模拟服务器发送模拟服务请求,模拟服务请求中包括测试场景参数。
第四方面,本申请实施例提供一种模拟测试装置,包括:第一确定模块,用于确定需要测试的目标服务;第一设置模块,用于在测试用例中设置路由计划参数,路由计划参数中包括目标服务的标识;测试请求发送模块,用于向后端业务系统发送具有测试用例的测试请求,以使后端业务系统在调用目标服务之前,在识别到目标服务的标识的情况下,调用目标服务的模拟服务,以测试目标服务。
第五方面,本申请实施例提供一种后端业务系统,包括:至少一个第一处理器;以及与至少一个第一处理器通信连接的第一存储器;其中,第一存储器存储有可被至少一个第一处理器执行的指令,指令被至少一个第一处理器执行,以使至少一个第一处理器能够执行上述第一方面实施例中的任一方法。
第六方面,本申请实施例提供一种电子设备,包括:至少一个第二处理器;以及与至少一个第二处理器通信连接的第二存储器;其中,第二存储器存储有可被至少一个第二处理器执行的指令,指令被至少一个第二处理器执行,以使至少一个第二处理器能够执行上述第二方面实施例中的任一方法。
第七方面,本申请实施例提供一种存储有计算机指令的非瞬时计算机可读存储介质,计算机指令用于使计算机执行上述任一方法。
上述实施方式所具有的其他效果将在下文中结合具体实施例加以说明。
附图说明
附图用于更好地理解本方案,不构成对本申请的限定。其中:
图1是根据本申请第一实施例的示意图;
图2是根据本申请第二实施例的示意图;
图3是根据本申请第三实施例的示意图;
图4是根据本申请实施例的应用场景示意图;
图5是根据本申请实施例的第一应用示例示意图;
图6是根据本申请实施例的第二应用示例示意图;
图7是根据本申请第四实施例的示意图;
图8是根据本申请第五实施例的示意图;
图9是根据本申请第六实施例的示意图;
图10是根据本申请第七实施例的示意图;
图11是用来实现本申请实施例的后端业务系统的框图。
图12是用来实现本申请实施例的电子设备的框图。
具体实施方式
以下结合附图对本申请的示范性实施例做出说明,其中包括本申请实施例的各种细节以助于理解,应当将它们认为仅仅是示范性的。因此,本领域普通技术人员应当认识到,可以对这里描述的实施例做出各种改变和修改,而不会背离本申请的范围和精神。同样,为了清楚和简明,以下的描述中省略了对公知功能和结构的描述。
如果后端业务系统与第三方服务交互异常的处理能力不足,会带来较为严重的软件缺陷问题。相关技术中,测试人员需要手动变更配置文件来切换第三方服务和模拟(Mock)服务,耗时较长,且出错概率较大,回归成本较高。或者,将系统子模块固定启动在某一机器上,通过对固定集群中的服务控制来模拟测试场景。这种方式对于多个下游的复杂的测试场景,如果路由信息由系统启动时加载,则无法变更,需要不断启停系统来支持测试。
本申请实施例提供了一种模拟测试方法,可以应用于后端业务系统中,通过在测试用例中增加路由计划参数,在调用目标服务之前,如果在路由计划参数中识别到目标服务的标识,则调用该目标服务的模拟服务,从而可以自动切换真实目标服务和模拟服务,提高自动化测试的效率。本实施例中,后端业务系统包括但不限于数据库管理系统、电子商务系统。
在一种实施方式中,如图1所示,本实施例的模拟测试方法包括:
步骤S101、接收具有测试用例的测试请求,该测试用例中包括路由计划参数。
测试用例(Test Case)是为某个测试目标而编制的一组测试输入、执行条件以及预期结果。本实施例中,对于需要测试的目标服务,可以在测试用例中设置包括目标服务的标识的路由计划参数,进而在向后端业务系统发送测试请求中,将携带有路由计划参数的测试用例发送给后端业务系统。
步骤S102、在调用目标服务之前,识别所述路由计划参数中是否包括所述目标服务的标识。
本实施例中,目标服务可以为下游服务,如需要第三方提供支持的第三方服务。在一个示例中,需要测试的目标服务为ServiceA,测试用例中的路由计划参数包括“mockdata:{“ServiceA”}”。其中,该目标服务的标识用该目标服务的名称表示。在调用目标服务ServiceA之前,需要识别路由计划参数中是否有该目标服务的名称。
步骤S103、在识别到所述目标服务的标识的情况下,调用所述目标服务的模拟服务,以测试所述目标服务。
在一个示例中,如果识别到路由计划参数中含有目标服务ServiceA的名称,则不调用目标服务ServiceA,转为调用目标服务ServiceA的Mock服务。例如,修改请求的服务地址,进而从请求目标服务ServiceA的服务,转而请求目标服务ServiceA的Mock服务,以完成对目标服务ServiceA的模拟。
在一种实施方式中,如图2所示,在步骤S103中包括:
步骤S201、在识别到所述目标服务的标识的情况下,从路由计划参数中,获取与目标服务的标识关联的测试场景参数;
步骤S202、向目标服务的模拟服务器发送模拟服务请求,该模拟服务请求中包括上述测试场景参数。
在构建测试用例时,可以将目标服务的测试场景参数设置在路由计划参数中,并与目标服务的标识相关联。从而,当接收到测试请求时,可以从路由计划参数中获取与目标服务的标识关联的测试场景参数,并发送给目标服务对应的模拟服务器,进而构建测试场景。
在一种实施方式中,如图3所示,本实施例的模拟测试方法还包括:
步骤S301、在未识别到目标服务的标识的情况下,调用目标服务。
当不需要测试某一目标服务时,路由计划参数中将没有该目标服务的标识,从而可以直接请求该目标服务。也就是说,即使在测试场景下,当某一下游服务不需要测试时,也可以直接调用。
在一种实施方式中,本实施例的模拟测试方法还包括:如果接收到对目标服务的客户端请求,则调用该目标服务。从而,在非测试场景下,后端业务系统可以直接调用下游服务。
图4示出了本实施例的模拟测试方法的应用场景图。本实施例中,后端业务系统可以包括业务逻辑代码和若干基础组件。统一资源管理层是其中一个基础组件,业务逻辑代码通过调用基础组件提供的功能,来完成运营和产品的需求(实现业务逻辑)。如图4所示,后端业务系统包括演示服务器(Demo Server)和统一资源管理层。其中,Demo Server可以为原后端业务系统中的业务逻辑代码和若干基础组件。如果Demo Server接收到客户端发送的对某一下游服务ServiceA的请求,则将该请求转发至统一资源管理层,由统一资源管理根据ServiceA的服务地址,直接调用ServiceA。如果Demo Server接收到具有测试用例的测试请求,则将测试用例中携带的路由计划参数透传给统一资源访问层,统一资源访问层获取,解析并执行路由计划参数中路由计划,如路由计划为修改ServiceA的地址到ServiceA的Mock服务地址。当路由计划参数中包括ServiceA的测试场景参数时,统一资源访问层发送模拟服务请求给Mock服务后,Mock服务则根据其携带的测试场景参数,返回指定的响应内容(或断开连接,无返回操作)。
下面结合图5介绍本申请实施例的模拟测试方法的应用示例。
DemoServer1在处理用户请求时,需要访问第三方服务ServiceA来获取用户数据。ServiceA由于网络抖动,未能在指定时间返回给DemoServer1返回用户数据,DemoServer1应正常回滚用户数据,并提示用户网络繁忙。
对于该场景进行的模拟测试包括:首先,在测试用例中,在原请求参数{“requestKey”:”requestValue”},增加路由计划参数:{“requestKey”:”requestValue”,“mockdata”:{“ServiceA”:{“mockCase”:”timeo ut”}}},其中mockdata参数为统一的键(key),方便统一资源访问层获取对应的参数值;ServiceA为需要变更路由的服务名,即需要测试的目标服务的标识。其次,当后端业务系统接收到测试请求(自动化测试用例请求)时,统一资源访问层在请求第三方服务ServiceA时,会遍历mockdata中的Service名,从而发现了ServiceA的名称,因此按照计划,将ServiceA的请求转到ServiceA的Mock服务,并向该Mock服务透传额外的参数:{“mockCase”:”timeout”},用来指定Mock服务对于此次测试用例,返回其所需的测试场景:超时返回。
在本应用示例的测试过程中,无需变更DemoServer1的任何服务配置,也无需启停服务。如果需要变更测试场景,只需要变更测试用例中路由计划参数即可。
在一种实施方式中,在步骤S301中可以包括:确定提供目标服务的多个目标服务器;对多个目标服务器进行均衡处理,并调用各目标服务器。
在一个示例中,统一资源管理层可以包括路由模块、负载均衡模块和Rpc调用模块。其中,路由模块用于解析并执行路由计划。后端业务系统同一时刻,处理客户端请求或测试请求的数量是有限的,过多的请求会对后端业务系统造成一定的负担。这里客户端请求或测试请求被看成是后端业务系统的负载,而每一次请求,后端业务系统都需要与目标服务(如ServiceA)进行交互,ServiceA会有多个目标服务器提供服务,负载均衡模块用于在这些目标服务器中进行均衡处理,确保ServiceA的各台目标服务器处理的请求数量都差不多。Rpc调用模块用于远程调用目标服务或目标服务的Mock服务。
在一种实施方式中,在步骤S102中可以包括:遍历路由计划参数中的多个标识,确定这多个标识中是否包括目标服务的标识。
需要构建测试场景的第三方服务可以有多个,只要在测试用例中增加相应第三方服务的标识即可。从而,可以实现对多个不同第三方服务的模拟测试。
下面结合图6介绍本申请实施例的模拟测试方法的又一个应用示例。
DemoServer2在处理用户请求时,会先调用ServiceA,调用结束后执行一段业务逻辑后,会继续调用ServiceB,最终将处理结果返回给用户。其中,ServiceA正常调用,对调用结果处理完后,继续调用ServiceB,但ServiceB发生内部错误,导致返回500的状态码。
对于该场景的模拟测试包括:首先,在测试用例中增加路由计划参数:{“mockdata”:{“ServiceB”:{“mockCase”:”internalError500”}}}。其次,当后端业务系统接收到测试请求(自动化测试用例请求)时,统一资源访问层在调用ServiceA时,遍历mockdata中的参数值,发现ServiceA的服务名未列入mockdata,则表示该次请求正常访问ServiceA,不请求Mock服务。DemoServer2对ServiceA的交互结束后,需要继续和ServiceB进行交互,调用ServiceB的服务前,遍历mockdata中的参数值,发现ServiceB的服务名在mockdata中,即该服务需要变更为请求ServiceB的Mock服务,统一资源访问层将本次与ServiceB的请求转向ServiceB的Mock服务,并在请求ServiceB的Mock服务时携带测试场景参数{“mockCase”:”internalError500”}(通知Mock服务模拟服务发生内部错误的情况),Mock服务将模拟服务器发生500的情况。如果需要构造ServiceA的异常返回场景,只需变更mockdata中ServiceB为ServiceA,并增加对应的测试场景参数。
本申请实施例还提供一种模拟测试方法,可以应用于测试请求的请求端。在一种实施方式中,如图7所示,该模拟测试方法包括:
步骤S701、确定需要测试的目标服务;
步骤S702、在测试用例中设置路由计划参数,路由计划参数中包括目标服务的标识;
步骤S703、向后端业务系统发送具有测试用例的测试请求,以使后端业务系统在调用目标服务之前,在识别到目标服务的标识的情况下,调用目标服务的模拟服务,以测试目标服务。
在一种实施方式中,本申请实施例的模拟测试方法还包括:确定目标服务的测试场景参数;在路由计划参数中设置测试场景参数,并将测试场景参数与目标服务的标识相关联。
本申请实施例提供了一种模拟测试装置。如图8所示,该模拟测试装置包括:测试请求接收模块801,用于接收具有测试用例的测试请求,测试用例中包括路由计划参数;识别模块802,用于在调用目标服务之前,识别路由计划参数中是否包括目标服务的标识;模拟服务调用模块803,用于在识别到目标服务的标识的情况下,调用目标服务的模拟服务,以测试目标服务。
在一种实施方式中,模拟服务调用模块803包括:测试场景参数获取单元901,用于从路由计划参数中,获取与目标服务的标识关联的测试场景参数;模拟服务请求发送单元902,用于向目标服务的模拟服务器发送模拟服务请求,模拟服务请求中包括测试场景参数。
在一种实施方式中,识别模块802还用于遍历路由计划参数中的多个标识,确定多个标识中是否包括目标服务的标识。
在一种实施方式中,本申请实施例的模拟测试装置还包括:目标服务调用模块,用于在未识别到目标服务的标识的情况下,调用目标服务。
在一种实施方式中,目标服务调用模块包括:目标服务器确定单元,用于确定提供目标服务的多个目标服务器;目标服务器调用单元,用于对多个目标服务器进行均衡处理,并调用各目标服务器。
在一种实施方式中,本申请实施例的模拟测试装置的目标服务调用模块还用于在接收到对目标服务的客户端请求的情况下,调用目标服务。
本申请实施例还提供一种模拟测试装置,如图10所示,该模拟测试装置包括:第一确定模块1001,用于确定需要测试的目标服务;第一设置模块1002,用于在测试用例中设置路由计划参数,路由计划参数中包括目标服务的标识;测试请求发送模块1003,用于向后端业务系统发送具有测试用例的测试请求,以使后端业务系统在调用目标服务之前,在识别到目标服务的标识的情况下,调用目标服务的模拟服务,以测试目标服务。
在一种实施方式中,本申请实施例的模拟测试装置还包括:第二确定模块,用于确定目标服务的测试场景参数;第二设置模块,用于在路由计划参数中设置测试场景参数,并将测试场景参数与目标服务的标识相关联。
本申请实施例各装置中的各模块的功能可以参见上述方法中的对应描述,在此不再赘述。
根据本申请的实施例,本申请还提供了一种后端业务系统。
如图11所示,是根据本申请实施例的后端业务系统的框图。该后端业务系统旨在表示各种形式的数字计算机,诸如,膝上型计算机、台式计算机、工作台、个人数字助理、服务器、刀片式服务器、大型计算机、和其它适合的计算机。后端业务系统还可以表示各种形式的移动装置,诸如,个人数字处理、蜂窝电话、智能电话、可穿戴设备和其它类似的计算装置。本文所示的部件、它们的连接和关系、以及它们的功能仅仅作为示例,并且不意在限制本文中描述的和/或者要求的本申请的实现。
如图11所示,该后端业务系统包括:一个或多个第一处理器1101、第一存储器1102,以及用于连接各部件的接口,包括高速接口和低速接口。各个部件利用不同的总线互相连接,并且可以被安装在公共主板上或者根据需要以其它方式安装。第一处理器可以对在后端业务系统内执行的指令进行处理,包括存储在第一存储器中或者第一存储器上以在外部输入/第一输出装置(诸如,耦合至接口的显示设备)上显示图形用户界面(GraphicalUser Interface,GUI)的图形信息的指令。在其它实施方式中,若需要,可以将多个第一处理器和/或多条总线与多个第一存储器和多个第一存储器一起使用。同样,可以连接多个后端业务系统,各个设备提供部分必要的操作(例如,作为服务器阵列、一组刀片式服务器、或者多第一处理器系统)。图11中以一个第一处理器1101为例。
第一存储器1102即为本申请所提供的一种非瞬时计算机可读存储介质。其中,所述第一存储器存储有可由至少一个第一处理器执行的指令,以使所述至少一个第一处理器执行本申请所提供的实体关系抽取模型的训练方法。本申请的非瞬时计算机可读存储介质存储计算机指令,该计算机指令用于使计算机执行本申请所提供的后端业务系统的模拟测试方法。
第一存储器1102作为一种非瞬时计算机可读存储介质,可用于存储非瞬时软件程序、非瞬时计算机可执行程序以及模块,如本申请实施例中的实体关系抽取模型的训练方法对应的程序指令/模块(例如,附图8所示的测试请求接收模块801、识别模块802和模拟服务调用模块803)。第一处理器1101通过运行存储在第一存储器1102中的非瞬时软件程序、指令以及模块,从而执行服务器的各种功能应用以及数据处理,即实现上述实施例中后端业务系统的模拟测试方法。
第一存储器1102可以包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需要的应用程序;存储数据区可存储根据实体关系抽取模型的训练方法的后端业务系统的使用所创建的数据等。此外,第一存储器1102可以包括高速随机存取第一存储器,还可以包括非瞬时第一存储器,例如至少一个磁盘第一存储器件、闪存器件、或其他非瞬时固态第一存储器件。在一些实施例中,第一存储器1102可选包括相对于第一处理器1101远程设置的第一存储器,这些远程第一存储器可以通过网络连接至后端业务系统。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。
后端业务系统还可以包括:第一输入装置1103和第一输出装置1104。第一处理器1101、第一存储器1102、第一输入装置1103和第一输出装置1104可以通过总线或者其他方式连接,图11中以通过总线连接为例。
第一输入装置1103可接收输入的数字或字符信息,以及产生与实体关系抽取模型的训练方法的后端业务系统的用户设置以及功能控制有关的键信号输入,例如触摸屏、小键盘、鼠标、轨迹板、触摸板、指示杆、一个或者多个鼠标按钮、轨迹球、操纵杆等第一输入装置。第一输出装置1104可以包括显示设备、辅助照明装置(例如,LED)和触觉反馈装置(例如,振动电机)等。该显示设备可以包括但不限于,液晶显示器(Liquid Cr11stalDispla11,LCD)、发光二极管(Light Emitting Diode,LED)显示器和等离子体显示器。在一些实施方式中,显示设备可以是触摸屏。
本申请实施例还提供一种测试请求端的电子设备。
如图12所示,是根据本申请实施例的电子设备的框图。该电子设备旨在表示各种形式的数字计算机,诸如,膝上型计算机、台式计算机、工作台、个人数字助理、服务器、刀片式服务器、大型计算机、和其它适合的计算机。电子设备还可以表示各种形式的移动装置,诸如,个人数字处理、蜂窝电话、智能电话、可穿戴设备和其它类似的计算装置。本文所示的部件、它们的连接和关系、以及它们的功能仅仅作为示例,并且不意在限制本文中描述的和/或者要求的本申请的实现。
如图12所示,该电子设备包括:一个或多个第二处理器1201、第二存储器1202,以及用于连接各部件的接口,包括高速接口和低速接口。各个部件利用不同的总线互相连接,并且可以被安装在公共主板上或者根据需要以其它方式安装。第二处理器可以对在电子设备内执行的指令进行处理,包括存储在第二存储器中或者第二存储器上以在外部输入/第二输出装置(诸如,耦合至接口的显示设备)上显示图形用户界面(Graphical UserInterface,GUI)的图形信息的指令。在其它实施方式中,若需要,可以将多个第二处理器和/或多条总线与多个第二存储器和多个第二存储器一起使用。同样,可以连接多个电子设备,各个设备提供部分必要的操作(例如,作为服务器阵列、一组刀片式服务器、或者多第二处理器系统)。图12中以一个第二处理器1201为例。
第二存储器1202即为本申请所提供的又一非瞬时计算机可读存储介质。其中,所述第二存储器存储有可由至少一个第二处理器执行的指令,以使所述至少一个第二处理器执行本申请所提供的抽取实体关系的方法。本申请的非瞬时计算机可读存储介质存储计算机指令,该计算机指令用于使计算机执行本申请所提供的测试请求端的模拟测试方法。
第二存储器1202作为一种非瞬时计算机可读存储介质,可用于存储非瞬时软件程序、非瞬时计算机可执行程序以及模块,如本申请实施例中的抽取实体关系的方法对应的程序指令/模块(例如,附图10所示的第一确定模块1001、第一设置模块1002和测试请求发送模块1003)。第二处理器1201通过运行存储在第二存储器1202中的非瞬时软件程序、指令以及模块,从而执行服务器的各种功能应用以及数据处理,即实现上述实施例中的测试请求端的模拟测试方法。
第二存储器1202可以包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需要的应用程序;存储数据区可存储根据抽取实体关系的方法的电子设备的使用所创建的数据等。此外,第二存储器1202可以包括高速随机存取第二存储器,还可以包括非瞬时第二存储器,例如至少一个磁盘第二存储器件、闪存器件、或其他非瞬时固态第二存储器件。在一些实施例中,第二存储器1202可选包括相对于第二处理器1201远程设置的第二存储器,这些远程第二存储器可以通过网络连接至抽取实体关系的方法的电子设备。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。
该电子设备还可以包括:第二输入装置1203和第二输出装置1204。第二处理器1201、第二存储器1202、第二输入装置1203和第二输出装置1204可以通过总线或者其他方式连接,图12中以通过总线连接为例。
第二输入装置1203可接收输入的数字或字符信息,以及产生与抽取实体关系的方法的电子设备的用户设置以及功能控制有关的键信号输入,例如触摸屏、小键盘、鼠标、轨迹板、触摸板、指示杆、一个或者多个鼠标按钮、轨迹球、操纵杆等第二输入装置。第二输出装置1204可以包括显示设备、辅助照明装置(例如,LED)和触觉反馈装置(例如,振动电机)等。该显示设备可以包括但不限于,液晶显示器(Liquid Cr12stal Displa12,LCD)、发光二极管(Light Emitting Diode,LED)显示器和等离子体显示器。在一些实施方式中,显示设备可以是触摸屏。
此处描述的系统和技术的各种实施方式可以在数字电子电路系统、集成电路系统、专用集成电路(Application Specific Integrated Circuits,ASIC)、计算机硬件、固件、软件、和/或它们的组合中实现。这些各种实施方式可以包括:实施在一个或者多个计算机程序中,该一个或者多个计算机程序可在包括至少一个可编程处理器的可编程系统上执行和/或解释,该可编程处理器可以是专用或者通用可编程处理器,可以从存储系统、至少一个输入装置、和至少一个输出装置接收数据和指令,并且将数据和指令传输至该存储系统、该至少一个输入装置、和该至少一个输出装置。
这些计算程序(也称作程序、软件、软件应用、或者代码)包括可编程处理器的机器指令,并且可以利用高级过程和/或面向对象的编程语言、和/或汇编/机器语言来实施这些计算程序。如本文使用的,术语“机器可读介质”和“计算机可读介质”指的是用于将机器指令和/或数据提供给可编程处理器的任何计算机程序产品、设备、和/或装置(例如,磁盘、光盘、存储器、可编程逻辑装置(programmable logic device,PLD)),包括,接收作为机器可读信号的机器指令的机器可读介质。术语“机器可读信号”指的是用于将机器指令和/或数据提供给可编程处理器的任何信号。
为了提供与用户的交互,可以在计算机上实施此处描述的系统和技术,该计算机具有:用于向用户显示信息的显示装置(例如,CRT(Cathode Ray Tube,阴极射线管)或者LCD(液晶显示器)监视器);以及键盘和指向装置(例如,鼠标或者轨迹球),用户可以通过该键盘和该指向装置来将输入提供给计算机。其它种类的装置还可以用于提供与用户的交互;例如,提供给用户的反馈可以是任何形式的传感反馈(例如,视觉反馈、听觉反馈、或者触觉反馈);并且可以用任何形式(包括声输入、语音输入或者、触觉输入)来接收来自用户的输入。
可以将此处描述的系统和技术实施在包括后台部件的计算系统(例如,作为数据服务器)、或者包括中间件部件的计算系统(例如,应用服务器)、或者包括前端部件的计算系统(例如,具有图形用户界面或者网络浏览器的用户计算机,用户可以通过该图形用户界面或者该网络浏览器来与此处描述的系统和技术的实施方式交互)、或者包括这种后台部件、中间件部件、或者前端部件的任何组合的计算系统中。可以通过任何形式或者介质的数字数据通信(例如,通信网络)来将系统的部件相互连接。通信网络的示例包括:局域网(Local Area Network,LAN)、广域网(Wide Area Network,WAN)和互联网。
计算机系统可以包括客户端和服务器。客户端和服务器一般远离彼此并且通常通过通信网络进行交互。通过在相应的计算机上运行并且彼此具有客户端-服务器关系的计算机程序来产生客户端和服务器的关系。
本申请实施例的模拟测试方法通过在测试用例中增加路由计划参数,在调用目标服务之前,如果在路由计划参数中识别到目标服务的标识,则调用该目标服务的模拟服务,从而可以自动切换真实目标服务和模拟服务,提高自动化测试的效率;通过在路由计划参数中设置与目标服务关联的测试场景参数,并将测试场景参数透传给模拟服务,从而提高测试场景的搭建效率。
应该理解,可以使用上面所示的各种形式的流程,重新排序、增加或删除步骤。例如,本发申请中记载的各步骤可以并行地执行也可以顺序地执行也可以不同的次序执行,只要能够实现本申请公开的技术方案所期望的结果,本文在此不进行限制。
上述具体实施方式,并不构成对本申请保护范围的限制。本领域技术人员应该明白的是,根据设计要求和其他因素,可以进行各种修改、组合、子组合和替代。任何在本申请的精神和原则之内所作的修改、等同替换和改进等,均应包含在本申请保护范围之内。
Claims (9)
1.一种模拟测试方法,其特征在于,包括:
接收具有测试用例的测试请求,所述测试用例中包括路由计划参数;
在调用目标服务之前,识别所述路由计划参数中是否包括所述目标服务的标识;
在识别到所述目标服务的标识的情况下,调用所述目标服务的模拟服务,以测试所述目标服务;
在未识别到所述目标服务的标识的情况下,调用所述目标服务;
所述调用所述目标服务的模拟服务,包括:
从所述路由计划参数中,获取与所述目标服务的标识关联的测试场景参数;
向所述目标服务的模拟服务器发送模拟服务请求,所述模拟服务请求中包括所述测试场景参数。
2.根据权利要求1所述的方法,其特征在于,调用所述目标服务,包括:
确定提供所述目标服务的多个目标服务器;
对多个所述目标服务器进行均衡处理,并调用各所述目标服务器。
3.根据权利要求1所述的方法,其特征在于,还包括:
如果接收到对所述目标服务的客户端请求,则调用所述目标服务。
4.一种模拟测试方法,其特征在于,包括:
确定需要测试的目标服务;
在测试用例中设置路由计划参数,所述路由计划参数中包括所述目标服务的标识;
向后端业务系统发送具有所述测试用例的测试请求,以使所述后端业务系统在调用目标服务之前,在识别到所述目标服务的标识的情况下,调用所述目标服务的模拟服务,以测试所述目标服务,在未识别到所述目标服务的标识的情况下,调用所述目标服务;
所述方法还包括:
确定所述目标服务的测试场景参数;
在所述路由计划参数中设置所述测试场景参数,并将所述测试场景参数与所述目标服务的标识相关联。
5.一种模拟测试装置,其特征在于,包括:
测试请求接收模块,用于接收具有测试用例的测试请求,所述测试用例中包括路由计划参数;
识别模块,用于在调用目标服务之前,识别所述路由计划参数中是否包括所述目标服务的标识;
模拟服务调用模块,用于在识别到所述目标服务的标识的情况下,调用所述目标服务的模拟服务,以测试所述目标服务;
目标服务调用模块,用于在未识别到目标服务的标识的情况下,调用所述目标服务;
所述模拟服务调用模块包括:
测试场景参数获取单元,用于从所述路由计划参数中,获取与所述目标服务的标识关联的测试场景参数;
模拟服务请求发送单元,用于向所述目标服务的模拟服务器发送模拟服务请求,所述模拟服务请求中包括所述测试场景参数。
6.一种模拟测试装置,其特征在于,包括:
确定模块,用于确定需要测试的目标服务;
设置模块,用于在测试用例中设置路由计划参数,所述路由计划参数中包括所述目标服务的标识;
测试请求发送模块,用于向后端业务系统发送具有所述测试用例的测试请求,以使所述后端业务系统在调用目标服务之前,在识别到所述目标服务的标识的情况下,调用所述目标服务的模拟服务,以测试所述目标服务,在未识别到所述目标服务的标识的情况下,调用所述目标服务;
所述模拟测试装置,还包括:
第二确定模块,用于确定所述目标服务的测试场景参数;
第二设置模块,用于在所述路由计划参数中设置所述测试场景参数,并将所述测试场景参数与所述目标服务的标识相关联。
7. 一种后端业务系统,其特征在于,包括:
至少一个第一处理器;以及
与所述至少一个第一处理器通信连接的第一存储器;其中,
所述第一存储器存储有可被所述至少一个第一处理器执行的指令,所述指令被所述至少一个第一处理器执行,以使所述至少一个第一处理器能够执行权利要求1-3中任一项所述的方法。
8.一种电子设备,其特征在于,包括:
至少一个第二处理器;以及
与所述至少一个第二处理器通信连接的第二存储器;其中,
所述第二存储器存储有可被所述至少一个第二处理器执行的指令,所述指令被所述至少一个第二处理器执行,以使所述至少一个第二处理器能够执行权利要求4所述的方法。
9.一种存储有计算机指令的非瞬时计算机可读存储介质,其特征在于,所述计算机指令用于使所述计算机执行权利要求1-4中任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911039191.1A CN110765024B (zh) | 2019-10-29 | 2019-10-29 | 模拟测试方法、装置、电子设备和计算机可读存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911039191.1A CN110765024B (zh) | 2019-10-29 | 2019-10-29 | 模拟测试方法、装置、电子设备和计算机可读存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN110765024A CN110765024A (zh) | 2020-02-07 |
CN110765024B true CN110765024B (zh) | 2023-08-29 |
Family
ID=69334841
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201911039191.1A Active CN110765024B (zh) | 2019-10-29 | 2019-10-29 | 模拟测试方法、装置、电子设备和计算机可读存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110765024B (zh) |
Families Citing this family (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111459656B (zh) * | 2020-03-06 | 2023-11-03 | 北京百度网讯科技有限公司 | 服务器管理方法、装置、电子设备和存储介质 |
CN111506507A (zh) * | 2020-04-15 | 2020-08-07 | 杭州数梦工场科技有限公司 | 业务服务的状态检测方法及装置、电子设备、存储介质 |
CN111897738B (zh) * | 2020-08-21 | 2023-09-01 | 中国工商银行股份有限公司 | 基于原子服务的自动化测试方法及装置 |
CN113760707A (zh) * | 2020-09-23 | 2021-12-07 | 北京沃东天骏信息技术有限公司 | 接口测试方法、装置、设备及计算机可读存储介质 |
CN112165430B (zh) * | 2020-09-24 | 2024-02-13 | 阿波罗智联(北京)科技有限公司 | 数据路由方法、装置、设备以及存储介质 |
CN112306880A (zh) * | 2020-11-02 | 2021-02-02 | 百度在线网络技术(北京)有限公司 | 测试方法、装置、电子设备和计算机可读存储介质 |
CN112637008B (zh) * | 2020-12-14 | 2022-08-09 | 广州品唯软件有限公司 | 链路模拟测试方法、装置、系统、计算机设备和存储介质 |
CN113568824A (zh) * | 2021-01-20 | 2021-10-29 | 腾讯科技(深圳)有限公司 | 通知服务测试方法、装置、电子设备及存储介质 |
CN113452575B (zh) * | 2021-06-24 | 2022-11-22 | 河北幸福消费金融股份有限公司 | 业务测试方法、系统、设备和存储介质 |
CN113656268B (zh) * | 2021-07-30 | 2024-02-06 | 北京百度网讯科技有限公司 | 业务服务的性能测试方法、装置、电子设备和存储介质 |
CN116962267A (zh) * | 2022-04-20 | 2023-10-27 | 中兴通讯股份有限公司 | 一种业务测试方法、装置及相关设备 |
Citations (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106528389A (zh) * | 2016-10-27 | 2017-03-22 | 北京小米移动软件有限公司 | 系统流畅性的性能评测方法、装置及终端 |
CN107329890A (zh) * | 2017-06-06 | 2017-11-07 | 北京金山安全软件有限公司 | 基于Mock的测试方法、装置及服务器 |
CN108427644A (zh) * | 2018-03-27 | 2018-08-21 | 深圳市买买提信息科技有限公司 | 服务测试方法、服务测试系统及服务测试装置 |
CN108647143A (zh) * | 2018-05-09 | 2018-10-12 | 平安普惠企业管理有限公司 | Mock接口测试方法、装置、计算机设备以及存储介质 |
CN109165165A (zh) * | 2018-09-04 | 2019-01-08 | 中国平安人寿保险股份有限公司 | 接口测试方法、装置、计算机设备和存储介质 |
CN109446062A (zh) * | 2018-09-17 | 2019-03-08 | 华为技术有限公司 | 云计算服务中的软件调试的方法和装置 |
CN109815112A (zh) * | 2018-12-14 | 2019-05-28 | 平安科技(深圳)有限公司 | 基于功能测试的数据调试方法、装置及终端设备 |
CN110018956A (zh) * | 2019-01-28 | 2019-07-16 | 阿里巴巴集团控股有限公司 | 应用调试方法及相关装置 |
CN110032454A (zh) * | 2018-01-12 | 2019-07-19 | 北京京东尚科信息技术有限公司 | 远程调用方法、系统和相关设备及计算机可读存储介质 |
CN110309048A (zh) * | 2019-05-21 | 2019-10-08 | 深圳壹账通智能科技有限公司 | 基于模拟端口改进软件集成系统的方法及相关设备 |
CN110309058A (zh) * | 2019-05-24 | 2019-10-08 | 平安银行股份有限公司 | 业务端测试方法、装置、计算机装置及计算机存储介质 |
CN110347596A (zh) * | 2019-07-02 | 2019-10-18 | 腾讯科技(深圳)有限公司 | 一种测试方法、装置、系统、电子设备及介质 |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7171653B2 (en) * | 2003-06-03 | 2007-01-30 | Hewlett-Packard Development Company, L.P. | Systems and methods for providing communication between a debugger and a hardware simulator |
US9720800B2 (en) * | 2015-08-28 | 2017-08-01 | International Business Machines Corporation | Auto-generating representational state transfer (REST) services for quality assurance |
US20170337116A1 (en) * | 2016-05-18 | 2017-11-23 | Google Inc. | Application testing on different device types |
-
2019
- 2019-10-29 CN CN201911039191.1A patent/CN110765024B/zh active Active
Patent Citations (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106528389A (zh) * | 2016-10-27 | 2017-03-22 | 北京小米移动软件有限公司 | 系统流畅性的性能评测方法、装置及终端 |
CN107329890A (zh) * | 2017-06-06 | 2017-11-07 | 北京金山安全软件有限公司 | 基于Mock的测试方法、装置及服务器 |
CN110032454A (zh) * | 2018-01-12 | 2019-07-19 | 北京京东尚科信息技术有限公司 | 远程调用方法、系统和相关设备及计算机可读存储介质 |
CN108427644A (zh) * | 2018-03-27 | 2018-08-21 | 深圳市买买提信息科技有限公司 | 服务测试方法、服务测试系统及服务测试装置 |
CN108647143A (zh) * | 2018-05-09 | 2018-10-12 | 平安普惠企业管理有限公司 | Mock接口测试方法、装置、计算机设备以及存储介质 |
CN109165165A (zh) * | 2018-09-04 | 2019-01-08 | 中国平安人寿保险股份有限公司 | 接口测试方法、装置、计算机设备和存储介质 |
CN109446062A (zh) * | 2018-09-17 | 2019-03-08 | 华为技术有限公司 | 云计算服务中的软件调试的方法和装置 |
CN109815112A (zh) * | 2018-12-14 | 2019-05-28 | 平安科技(深圳)有限公司 | 基于功能测试的数据调试方法、装置及终端设备 |
CN110018956A (zh) * | 2019-01-28 | 2019-07-16 | 阿里巴巴集团控股有限公司 | 应用调试方法及相关装置 |
CN110309048A (zh) * | 2019-05-21 | 2019-10-08 | 深圳壹账通智能科技有限公司 | 基于模拟端口改进软件集成系统的方法及相关设备 |
CN110309058A (zh) * | 2019-05-24 | 2019-10-08 | 平安银行股份有限公司 | 业务端测试方法、装置、计算机装置及计算机存储介质 |
CN110347596A (zh) * | 2019-07-02 | 2019-10-18 | 腾讯科技(深圳)有限公司 | 一种测试方法、装置、系统、电子设备及介质 |
Non-Patent Citations (1)
Title |
---|
自动化单元测试中MOCK技术的研究与应用;尹春娇;《中国优秀硕士学位论文全文数据库信息科技辑》(第6期);I138-1281 * |
Also Published As
Publication number | Publication date |
---|---|
CN110765024A (zh) | 2020-02-07 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110765024B (zh) | 模拟测试方法、装置、电子设备和计算机可读存储介质 | |
US20210208951A1 (en) | Method and apparatus for sharing gpu, electronic device and readable storage medium | |
CN111694646B (zh) | 资源调度方法、装置、电子设备及计算机可读存储介质 | |
CN111752843B (zh) | 用于确定影响面的方法、装置、电子设备及可读存储介质 | |
JP7030177B2 (ja) | テスト方法及び装置 | |
KR20210040293A (ko) | 압력 테스트 방법, 장치, 전자기기 및 컴퓨터 판독가능 매체 | |
CN111683139B (zh) | 用于均衡负载的方法和装置 | |
US11843674B2 (en) | Virtual workspace experience visualization and optimization | |
JP7387773B2 (ja) | 継続的インテグレーションテスト方法、システム及び装置、電子機器、記憶媒体並びにコンピュータプログラム | |
CN112527252A (zh) | 小程序管理方法及装置、小程序平台、电子设备、介质 | |
CN112015468A (zh) | 一种接口文档处理方法、装置、电子设备以及存储介质 | |
CN112269706A (zh) | 接口参数校验方法、装置、电子设备以及计算机可读介质 | |
KR102583532B1 (ko) | 스케줄링 방법, 장치, 기기, 기록 매체 및 컴퓨터 프로그램 | |
CN110752968A (zh) | 性能基准测试方法、装置、电子设备及存储介质 | |
CN111414154A (zh) | 前端开发的方法、装置、电子设备和存储介质 | |
US20200267230A1 (en) | Tracking client sessions in publish and subscribe systems using a shared repository | |
CN112527635B (zh) | 一种故障注入方法、装置、电子设备以及存储介质 | |
CN113726902B (zh) | 微服务的调用方法、系统、服务器、设备和存储介质 | |
CN112052152A (zh) | 一种模拟测试的方法和装置 | |
CN114661274A (zh) | 用于生成智能合约的方法和装置 | |
CN111813407B (zh) | 游戏开发方法、游戏运行方法、装置和电子设备 | |
CN113434382A (zh) | 数据库性能监控方法、装置、电子设备及计算机可读介质 | |
CN112069071A (zh) | 用于确定程序适配性的方法、装置 | |
CN113377638B (zh) | 性能测试工具的生成方法和装置 | |
CN113535533B (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 |