CN109101430A - 测试方法、装置和设备 - Google Patents

测试方法、装置和设备 Download PDF

Info

Publication number
CN109101430A
CN109101430A CN201810975278.9A CN201810975278A CN109101430A CN 109101430 A CN109101430 A CN 109101430A CN 201810975278 A CN201810975278 A CN 201810975278A CN 109101430 A CN109101430 A CN 109101430A
Authority
CN
China
Prior art keywords
mock
test
request
test request
target label
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.)
Granted
Application number
CN201810975278.9A
Other languages
English (en)
Other versions
CN109101430B (zh
Inventor
陈田忠
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Advanced Nova Technology Singapore Holdings Ltd
Original Assignee
Alibaba Group Holding Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Alibaba Group Holding Ltd filed Critical Alibaba Group Holding Ltd
Priority to CN201810975278.9A priority Critical patent/CN109101430B/zh
Publication of CN109101430A publication Critical patent/CN109101430A/zh
Application granted granted Critical
Publication of CN109101430B publication Critical patent/CN109101430B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/36Preventing errors by testing or debugging software
    • G06F11/3668Software testing

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Quality & Reliability (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Debugging And Monitoring (AREA)

Abstract

本说明书提供一种测试方法、装置和设备,本实施例的测试请求携带有目标标记,目标标记用于:指示所述测试请求的响应方为mock系统以及指示对应的mock规则标识,因此测试人员可以根据mock规则确定其所需的响应结果,并令测试请求携带目标标记;而网关系统记录mock规则,根据目标标记,网关系统可以确定测试请求由mock系统响应,并确定该测试请求所需的响应结果;之后,网关系统生成携带有响应结果信息的调用请求发送给mock系统,对于mock系统来说,调用请求中就携带了响应结果信息,因此可以直接根据响应结果信息生成响应消息。

Description

测试方法、装置和设备
技术领域
本说明书实施例涉及测试技术领域,尤其涉及测试方法、装置和设备。
背景技术
在软件测试领域,mock的意思是模拟,简单来说,就是通过某种技术手段模拟测试对象的行为,返回预先设计的结果。mock系统维护有多条mock规则,以通过mock规则确定测试请求所需要的响应结果。mock规则是指:定义测试请求及相应的响应结果的一份描述,其中,如何确定测试请求所需要的响应结果,一些传统方案采用业务参数来进行控制,也就是说,测试人员在测试时确定所需的响应结果,根据mock规则令测试请求携带相应的业务参数;而mock系统通过测试请求中所携带的业务参数,确定测试请求所需的响应结果后返回响应消息。基于此,需要提供维护成本更低的测试方案。
发明内容
为克服相关技术中存在的问题,本说明书提供了测试方法、装置和设备。
根据本说明书实施例的第一方面,提供一种测试装置,包括:
存储模块,用于:存储至少一条mock规则,所述mock规则包含有:mock规则标识和响应结果信息;
对接模块,用于:接收发起端发起的测试请求;
查找模块,用于:若所述测试请求携带有目标标记,查找对应所述测试请求的响应结果信息;其中,所述目标标记用于:指示所述测试请求的响应方为mock系统以及指示对应的mock规则标识;
调用模块,用于:生成携带有所述响应结果信息的调用请求发送给mock系统;
反馈模块,用于:获取所述mock系统根据所述调用请求反馈的响应消息并发送给所述发起端。
可选的,若所述测试请求为URL请求,所述目标标记为所述URL请求的传递参数。
可选的,若所述测试请求为http请求,所述目标标记位于所述测试请求的头部。
可选的,所述调用模块还用于:若所述测试请求未携带有所述目标标记,则调用测试系统响应所述测试请求。
可选的,所述目标标记包括:mock标记和mock规则标识,所述mock标记位于所述mock规则标识之前,所述mock标记指示所述测试请求的响应方为mock系统。
根据本说明书实施例的第二方面,提供一种测试方法,包括:
接收发起端发起的测试请求;
若所述测试请求携带有目标标记,从已存储mock规则中查找对应所述测试请求的响应结果信息;其中,所述目标标记用于:指示所述测试请求的响应方为mock系统以及指示对应的mock规则标识;所述mock规则包含有:mock规则标识和响应结果信息;
生成携带有所述响应结果信息的调用请求发送给mock系统;
获取所述mock系统根据所述调用请求反馈的响应消息并发送给所述发起端。
可选的,若所述测试请求为URL请求,所述目标标记为所述URL请求的传递参数。
可选的,若所述测试请求为http请求,所述目标标记位于所述测试请求的头部。
可选的,所述调用模块还用于:若所述测试请求未携带有所述目标标记,则调用测试系统响应所述测试请求。
可选的,所述目标标记包括:mock标记和mock规则标识,所述mock标记位于所述mock规则标识之前,所述mock标记指示所述测试请求的响应方为mock系统。
根据本说明书实施例的第三方面,提供一种测试设备,包括:
处理器;
用于存储处理器可执行指令的存储器;
其中,所述处理器被配置为:
接收发起端发起的测试请求;
若所述测试请求携带有目标标记,从已存储mock规则中查找对应所述测试请求的响应结果信息;其中,所述目标标记用于:指示所述测试请求的响应方为mock系统以及指示对应的mock规则标识;所述mock规则包含有:mock规则标识和响应结果信息;
生成携带有所述响应结果信息的调用请求发送给mock系统;
获取所述mock系统根据所述调用请求反馈的响应消息并发送给所述发起端。
本说明书的实施例提供的技术方案可以包括以下有益效果:
本说明书实施例中,测试请求携带有目标标记,目标标记用于:指示所述测试请求的响应方为mock系统以及指示对应的mock规则标识,因此测试人员可以根据mock规则确定其所需的响应结果,并令测试请求携带目标标记;而网关系统记录mock规则,根据目标标记,网关系统可以确定测试请求由mock系统响应,并确定该测试请求所需的响应结果;之后,网关系统生成携带有响应结果信息的调用请求发送给mock系统,对于mock系统来说,调用请求中就携带了响应结果信息,因此可以直接根据响应结果信息生成响应消息。本实施例令测试请求携带的目标标记来指示mock规则标识,一方面无需测试人员理解业务参数来控制mock规则,理解成本较低;另一方面,若业务参数等需要变动,本实施例的方案只需要更新mock规则即可,无需进行较大的改动,维护和改造成本较低。
应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,并不能限制本说明书。
附图说明
此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本说明书的实施例,并与说明书一起用于解释本说明书的原理。
图1A是一种测试场景示意图。
图1B是另一种测试场景示意图。
图2A是本说明书实施例根据一示例性实施例示出的一种测试场景图。
图2B是本说明书根据一示例性实施例示出的测试装置的结构框图。
图3是本说明书根据一示例性实施例示出的另一种测试场景示意图。
图4是本说明书实施例测试装置所在设备的一种硬件结构图。
图5是本说明书根据一示例性实施例示出的一种测试方法的流程图。
具体实施方式
这里将详细地对示例性实施例进行说明,其示例表示在附图中。下面的描述涉及附图时,除非另有表示,不同附图中的相同数字表示相同或相似的要素。以下示例性实施例中所描述的实施方式并不代表与本说明书相一致的所有实施方式。相反,它们仅是与如所附权利要求书中所详述的、本说明书的一些方面相一致的装置和方法的例子。
在本说明书使用的术语是仅仅出于描述特定实施例的目的,而非旨在限制本说明书。在本说明书和所附权利要求书中所使用的单数形式的“一种”、“所述”和“该”也旨在包括多数形式,除非上下文清楚地表示其他含义。还应当理解,本文中使用的术语“和/或”是指并包含一个或多个相关联的列出项目的任何或所有可能组合。
应当理解,尽管在本说明书可能采用术语第一、第二、第三等来描述各种信息,但这些信息不应限于这些术语。这些术语仅用来将同一类型的信息彼此区分开。例如,在不脱离本说明书范围的情况下,第一信息也可以被称为第二信息,类似地,第二信息也可以被称为第一信息。取决于语境,如在此所使用的词语“如果”可以被解释成为“在……时”或“当……时”或“响应于确定”。
在系统的线下测试或线上演练过程中,需要关注的对象和服务可能会依赖很多外部接口。例如,一些支付平台的线下环境需要对接N家外部机构(例如银行、基金公司或卡组织等)的测试系统,以用于功能测试、回归测试和性能测试等。如图1A所示,是一种测试场景示意图,测试客户端发起测试请求,需要对被测系统进行测试,测试过程需要依赖外部服务(图1A以外部服务依赖1、外部服务依赖2和外部服务依赖3为例进行示意)。这些外部服务由外部机构的测试系统所提供,但外部机构的线下测试系统有可能出现不稳定情况,可能无法提供长期稳定的测试环境。
实际应用中可以采用mock测试来解决上述问题。在软件测试领域,mock的意思是模拟,简单来说,就是通过某种技术手段模拟测试对象的行为,返回预先设计的结果。也就是说,对于任意被测试的对象,可以根据具体测试场景的需要,返回需要的特定结果,以供发起端接收到特定结果后测试后续的处理流程是否正常。
mock测试是以可控的方式模拟外部接口服务的依赖,以便验证待测对象在可能存在的各种状态下是否可提供稳定可靠的服务。目前,针对外部接口服务的mock测试一般需要服务器,并在其上部署mock系统。如图1B所示,是另一种测试环境示意图,测试请求依赖于mock系统,由mock系统模拟一个或多个外部机构的一个或多个外部服务,向测试客户端反馈其所需的响应消息。
mock系统维护有多条mock规则,通过mock规则可以确定测试请求所需要的响应结果。mock规则是指:定义测试请求及相应的响应结果的一份描述,其中,如何确定测试请求所需要的响应结果,一些传统方案采用业务参数来进行控制,也就是说,测试人员在测试时确定所需的响应结果,根据mock规则令测试请求携带相应的业务参数;而mock系统通过测试请求中所携带的业务参数,确定测试请求所需的响应结果后返回响应消息。
以支付场景为例,一条有关支付的业务流程中,所涉及的响应结果可能包括:支付成功、支付失败(具体还可细分为:因余额不足失败、因支付风险而失败、因银行卡到期而失败等等);不同的响应结果,可以根据不同的业务参数(业务参数携带于测试请求中)来控制,以金额为例,可以是:金额小于100对应支付成功的响应结果、金额在100至200对应因余额不足失败的响应结果、金额大于1万对应因支付风险而失败的响应结果。
但这种基于业务参数的透传,维护成本较大,业务系统可能面临更新,业务逻辑的改变可能导致业务参数的变化,此种情况下可能需要对mock规则进行大改,例如修改每条mock规则中的业务参数;并且,理解成本也较大,需要测试人员理解业务参数与响应结果的映射关系,使测试请求中携带相应的业务参数。
基于此,如图2A所示,是本说明书实施例根据一示例性实施例示出的一种测试场景图,包括:若干个测试发起端(以下简称发起端)、网关系统、若干个外部的测试系统和mock系统。作为例子,如图2B所示,是本说明书根据一示例性实施例示出的测试装置的结构框图,本实施例的测试装置可应用于图2B所示的网关系统中,当然,本说明书也不排除其他的网络架构,测试装置也可以应用于其他测试场景中的其他设备,本实施例对此不作限定。具体的,测试装置可包括:
存储模块21,用于:存储至少一条mock规则,所述mock规则包含有:mock规则标识和响应结果信息;
接收模块22,用于:接收发起端发起的测试请求;
查找模块23,用于:若所述测试请求携带有目标标记,查找对应所述测试请求的响应结果信息;其中,所述目标标记用于:指示所述测试请求的响应方为mock系统以及指示对应的mock规则标识;
调用模块24,用于:生成携带有所述响应结果信息的调用请求发送给mock系统;
反馈模块25,用于:获取所述mock系统根据所述调用请求反馈的响应消息并发送给所述发起端。
本实施例中,由网关系统存储mock规则,mock规则中包含有标识和响应结果信息。另外,测试请求携带有目标标记,目标标记用于:指示所述测试请求的响应方为mock系统以及指示对应的mock规则标识,因此测试人员可以根据mock规则确定其所需的响应结果,并令测试请求携带目标标记;而网关系统记录mock规则,根据目标标记,网关系统可以确定测试请求由mock系统响应,并确定该测试请求所需的响应结果;之后,网关系统生成携带有响应结果信息的调用请求发送给mock系统,对于mock系统来说,调用请求中就携带了响应结果信息,因此可以直接根据响应结果信息生成响应消息。本实施例令测试请求携带的目标标记来指示mock规则标识,一方面无需测试人员理解业务参数来控制mock规则,理解成本较低;另一方面,若业务参数等需要变动,本实施例的方案无需对mock规则进行改动,维护和改造成本较低。
实际应用中,网关系统对接有mock系统和外部的测试系统,测试场景中,若测试项目较多,有可能面临如下情况:有些测试请求可能希望由mock系统来响应,有些测试请求可能希望由测试系统来响应,因此,本实施例中,目标标记的另一作用是指示该测试请求希望由哪个系统来响应,具体的,目标标记指示由mock系统响应所述测试请求,网关系统则可以调用mock系统,因此测试请求可以灵活指示哪些系统对其进行响应,从而满足不同测试项目的需求。
为了使网关系统能够确定测试请求所指定的系统,本实施例中令测试请求中携带目标标记,由目标标记指示该由哪个系统响应本次测试请求。实际应用中,目标标记可以有多种方式实现,作为例子,可以针对mock系统和/或测试系统设定不同的系统标记,例如,针对mock系统设定mock标记,若目标标记包括mock标记,则目标标记指示本次测试请求期望由mock系统进行响应,若目标标记中未包括mock标记,则目标标记指示本次测试请求期望由测试系统进行响应。在另一些例子中,也可以是针对测试系统设定测试系统标记,同理,若目标标记包括测试系统标记,则目标标记指示本次测试请求期望由测试系统进行响应,若目标标记未包括测试系统标记,则目标标记指示本次测试请求期望由mock系统进行响应。在其他例子中,还可以是分别针对mock系统和测试系统设定标记,若目标标记包括测试系统标记,目标标记指示本次测试请求期望由测试系统进行响应,若目标标记包括mock标记,目标标记指示本次测试请求期望由mock系统进行响应。
实际应用中可以根据测试请求的具体格式灵活配置目标标记在测试请求中的携带位置,为了更快速地从测试请求中识别出目标标记,作为例子,若测试请求的格式为http,所述目标标记位于所述测试请求的头部,具体的,HTTP格式的请求信息通常由3部分组成:①请求方法URI协议/版本、②请求头(Request Header)、③请求正文。其中,头部Request Header包含许多有关的客户端环境和请求正文的有用信息。例如,请求头可以声明浏览器所用的语言,请求正文的长度等。因此,本实施例中目标标记位于Request Header中,目标标记不会对测试请求中位于请求正文位置的原有业务内容造成侵入,改造的成本非常低。
在另一些例子中,若所述测试请求为URL(Uniform Resource Locator,统一资源定位符)请求,所述目标标记为所述URL请求的传递参数。本实施例中,将目标标记作为URL请求的传递参数发送给网关系统,作为例子,URL格式的测试请求示例如下:
www.akgla.com/glagklakhg.asp?mock_status|mock_rule_id
其中www.akgla.com/glagklakhg.asp表征发起测试请求页面的URL,而其后携带的则是可以变的传递参数,上述例子中的mock_status|mock_rule_id即目标标记,其中,mock_status为mock标记,指示该测试请求由mock系统响应,而mock_rule_id即mock规则标识。本实施例中,传递参数包含的目标标记不会影响测试请求的原有其他业务内容,但本实施例借用该测试请求将目标标记作为URL传递参数发送给网关系统,网关系统从该URL可以解析得到目标标记,目标标记不会对测试请求中的原有业务内容造成侵入,改造的成本非常低。
接下来再通过一实施例对本说明书的测试装置进行描述。
以第三方支付平台为例,支付平台需要对接N家外部机构以进行功能测试、回归测试和性能测试。但外部机构的线下测试环境不一定稳定,部分合作机构无法提供长期、稳定的沙箱测试环境,因此支付服务方开发了mock系统,用于模拟各种场景下外部机构的服务接口的报文返回。传统网关系统中,在项目较少的情况下,网关系统只支持静态的地址配置,测试人员通过设置网关系统所对接的地址,使得网关系统要么访问外部机构的测试系统,要么访问mock系统。
随着支付服务方的项目越来越多,测试需求也越来越多样,部分项目可能需要访问外部的测试系统,部分项目需要访问mock系统,这种独占式的配置就无法支持测试需求。
另外,mock规则由mock系统维护,传统mock规则一般通过业务参数来控制,以金额为例,通过测试请求中的特定的金额,指示mock系统返回特定的结果。例如,在线下环境中一个100美元的订单,调用mock系统会返回成功;200美元的订单,mock系统会返回失败。但这种基于业务参数的透传,维护和理解成本都比较大,需要测试人员理解这种映射关系;另外,基于业务参数的透传,若后续业务参数发生变动,改造成本也较大。
如图3所示,是本说明书根据一示例性实施例示出的另一种测试场景示意图。
对网关系统来说,网关系统的入口面向测试的发起端,发起端在测试请求中植入数据,本实施例中将植入的数据称为目标标记,其中,目标标记包括一mock标记,mock标记指示测试请求的响应方为mock系统;另外,目标标记还包括mock规则标识。如图3所示:
①若测试端为其他业务系统的网关,则测试请求通常为http格式,测试端可以在http请求的Header中植入目标标识(mock标记和mock规则标识)。
②若测试端为页面或APP(Application,应用程序),则测试请求通常为URL,测试端可以在URL的传递参数中携带目标标记(mock标记和mock规则标识)。
实际应用中,在一些SOA(面向服务的体系结构,service-orientedarchitecture)分布式架构场景下,线下测试往往还需要验证中间服务的代码变更影响,因此本实施例的网关系统可以具有入口和出口,测试请求需要从入口一直走到出口,以覆盖完整的路径。因此,入口接收测试请求,从测试请求中解析目标标记,并生成该条测试请求的mock信息,并将mock信息存储在分布式缓存中。mock信息格式示例如下:
KEY=TraceId
Value=mock_status|mock_rule_id
其中,TraceId是指分布式系统中用于追踪、记录一笔请求的ID单据,TraceId是贯穿整个请求处理过程中的信息。
Value表示目标标记,其中,mock_status为mock标记,mock_rule_id为mock规则标识,其中,mock标记位于所述mock规则标识之前,可以便于网关系统快速地解析到该条测试请求的响应方为mock系统。
本实施例中,网关系统需要同时维护外部的测试系统的通信地址和mock系统的通信地址,可选的,可以设置默认访问外部的测试系统,也即是测试请求未携带有所述目标标记,则调用测试系统响应所述测试请求。
网关系统的出口在调用合作机构之前,需要判断是否是线下环境(由测试人员对网关系统进行配置,网关系统通过读取配置信息即可获知)。如果是线下环境,网关系统的出口基于测试请求的TraceId信息,从分布式缓存中读取mock信息,如果读取到mock信息(表示读取到目标标识,目标标识指示测试请求由mock系统响应),则调用mock系统,并查找出mock规则的响应结果信息并植入于调用请求中,通过该调用请求调用mock系统进行响应;其中,图3实施例以调用请求为http为例,调用请求中可以直接植入响应结果信息mock_rule。若未读取到mock信息(表示测试请求未携带目标标识),因此调用外部的测试系统。
以上所描述的装置实施例仅仅是示意性的,其中所述作为分离部件说明的模块可以是或者也可以不是物理上分开的,作为模块显示的部件可以是或者也可以不是物理模块,即可以位于一个地方,或者也可以分布到多个网络模块上。可以根据实际的需要选择其中的部分或者全部模块来实现本说明书方案的目的。本领域普通技术人员在不付出创造性劳动的情况下,即可以理解并实施。
本说明书测试装置的实施例可以应用在测试设备上,例如服务器等。装置实施例可以通过软件实现,也可以通过硬件或者软硬件结合的方式实现。以软件实现为例,作为一个逻辑意义上的装置,是通过其所在测试的处理器将非易失性存储器中对应的计算机程序指令读取到内存中运行形成的。从硬件层面而言,如图4所示,为本说明书实施例测试装置所在设备的一种硬件结构图,除了图4所示的处理器410、内存430、网络接口420、以及非易失性存储器440之外,实施例中装置431所在的服务器,通常根据该设备的实际功能,还可以包括其他硬件,对此不再赘述。
与前述测试装置的实施例相对应,本说明书还提供了测试方法及其所应用的测试设备的实施例。
如图5所示,是本说明书根据一示例性实施例示出的一种测试方法的流程图,包括:
在步骤502中,接收发起端发起的测试请求;
在步骤504中,若所述测试请求携带有目标标记,从已存储mock规则中查找对应所述测试请求的响应结果信息;其中,所述目标标记用于:指示所述测试请求的响应方为mock系统以及指示对应的mock规则标识;所述mock规则包含有:mock规则标识和响应结果信息;
在步骤506中,生成携带有所述响应结果信息的调用请求发送给mock系统;
在步骤508中,获取所述mock系统根据所述调用请求反馈的响应消息并发送给所述发起端。
可选的,若所述测试请求为URL请求,所述目标标记为所述URL请求的传递参数。
可选的,若所述测试请求为http请求,所述目标标记位于所述测试请求的头部。
可选的,所述调用模块还用于:若所述测试请求未携带有所述目标标记,则调用测试系统响应所述测试请求。
可选的,所述目标标记包括:mock标记和mock规则标识,所述mock标记位于所述mock规则标识之前,所述mock标记指示所述测试请求的响应方为mock系统。
根据本说明书实施例的第三方面,提供一种测试设备,包括:
处理器;
用于存储处理器可执行指令的存储器;
其中,所述处理器被配置为:
接收发起端发起的测试请求;
若所述测试请求携带有目标标记,从已存储mock规则中查找对应所述测试请求的响应结果信息;其中,所述目标标记用于:指示所述测试请求的响应方为mock系统以及指示对应的mock规则标识;所述mock规则包含有:mock规则标识和响应结果信息;
生成携带有所述响应结果信息的调用请求发送给mock系统;
获取所述mock系统根据所述调用请求反馈的响应消息并发送给所述发起端。
上述测试方法中各个步骤的实现过程可参见上述测试装置中各个模块的功能和作用,在此不再赘述。
上述对本说明书特定实施例进行了描述。其它实施例在所附权利要求书的范围内。在一些情况下,在权利要求书中记载的动作或步骤可以按照不同于实施例中的顺序来执行并且仍然可以实现期望的结果。另外,在附图中描绘的过程不一定要求示出的特定顺序或者连续顺序才能实现期望的结果。在某些实施方式中,多任务处理和并行处理也是可以的或者可能是有利的。
本领域技术人员在考虑说明书及实践这里申请的发明后,将容易想到本说明书的其它实施方案。本说明书旨在涵盖本说明书的任何变型、用途或者适应性变化,这些变型、用途或者适应性变化遵循本说明书的一般性原理并包括本说明书未申请的本技术领域中的公知常识或惯用技术手段。说明书和实施例仅被视为示例性的,本说明书的真正范围和精神由下面的权利要求指出。
应当理解的是,本说明书并不局限于上面已经描述并在附图中示出的精确结构,并且可以在不脱离其范围进行各种修改和改变。本说明书的范围仅由所附的权利要求来限制。
以上所述仅为本说明书的较佳实施例而已,并不用以限制本说明书,凡在本说明书的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本说明书保护的范围之内。

Claims (11)

1.一种测试装置,包括:
存储模块,用于:存储至少一条mock规则,所述mock规则包含有:mock规则标识和响应结果信息;
接收模块,用于:接收发起端发起的测试请求;
查找模块,用于:若所述测试请求携带有目标标记,查找对应所述测试请求的响应结果信息;其中,所述目标标记用于:指示所述测试请求的响应方为mock系统以及指示对应的mock规则标识;
调用模块,用于:生成携带有所述响应结果信息的调用请求发送给mock系统;
反馈模块,用于:获取所述mock系统根据所述调用请求反馈的响应消息并发送给所述发起端。
2.根据权利要求1所述的装置,所述测试请求为URL请求,所述目标标记为所述URL请求的传递参数。
3.根据权利要求1所述的装置,所述测试请求为http请求,所述目标标记位于所述测试请求的头部。
4.根据权利要求1所述的装置,所述调用模块还用于:若所述测试请求未携带有所述目标标记,则调用测试系统响应所述测试请求。
5.根据权利要求1所述的系统,所述目标标记包括:mock标记和mock规则标识,所述mock标记位于所述mock规则标识之前,所述mock标记指示所述测试请求的响应方为mock系统。
6.一种测试方法,包括:
接收发起端发起的测试请求;
若所述测试请求携带有目标标记,从已存储mock规则中查找对应所述测试请求的响应结果信息;其中,所述目标标记用于:指示所述测试请求的响应方为mock系统以及指示对应的mock规则标识;所述mock规则包含有:mock规则标识和响应结果信息;
生成携带有所述响应结果信息的调用请求发送给mock系统;
获取所述mock系统根据所述调用请求反馈的响应消息并发送给所述发起端。
7.根据权利要求6所述的方法,若所述测试请求为URL请求,所述目标标记为所述URL请求的传递参数。
8.根据权利要求6所述的方法,若所述测试请求为http请求,所述目标标记位于所述测试请求的头部。
9.根据权利要求6所述的方法,所述调用模块还用于:若所述测试请求未携带有所述目标标记,则调用测试系统响应所述测试请求。
10.根据权利要求6所述的方法,所述目标标记包括:mock标记和mock规则标识,所述mock标记位于所述mock规则标识之前,所述mock标记指示所述测试请求的响应方为mock系统。
11.一种测试设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,其中,所述处理器执行所述程序时实现如下方法:
接收发起端发起的测试请求;
若所述测试请求携带有目标标记,从已存储mock规则中查找对应所述测试请求的响应结果信息;其中,所述目标标记用于:指示所述测试请求的响应方为mock系统以及指示对应的mock规则标识;所述mock规则包含有:mock规则标识和响应结果信息;
生成携带有所述响应结果信息的调用请求发送给mock系统;
获取所述mock系统根据所述调用请求反馈的响应消息并发送给所述发起端。
CN201810975278.9A 2018-08-24 2018-08-24 测试方法、装置和设备 Active CN109101430B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201810975278.9A CN109101430B (zh) 2018-08-24 2018-08-24 测试方法、装置和设备

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201810975278.9A CN109101430B (zh) 2018-08-24 2018-08-24 测试方法、装置和设备

Publications (2)

Publication Number Publication Date
CN109101430A true CN109101430A (zh) 2018-12-28
CN109101430B CN109101430B (zh) 2022-08-09

Family

ID=64851483

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201810975278.9A Active CN109101430B (zh) 2018-08-24 2018-08-24 测试方法、装置和设备

Country Status (1)

Country Link
CN (1) CN109101430B (zh)

Cited By (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110334000A (zh) * 2019-05-07 2019-10-15 重庆天蓬网络有限公司 一种基于mock技术的测试方法
CN110362472A (zh) * 2019-05-31 2019-10-22 口碑(上海)信息技术有限公司 Mock测试方法、装置及设备
CN111078477A (zh) * 2019-11-13 2020-04-28 航天信息股份有限公司 接口测试的方法、装置、存储介质和电子设备
CN111090589A (zh) * 2019-12-19 2020-05-01 广州品唯软件有限公司 软件测试方法、软件测试装置及可读存储介质
CN111177003A (zh) * 2019-12-30 2020-05-19 北京同邦卓益科技有限公司 一种测试方法、装置、系统、电子设备及存储介质
CN111382062A (zh) * 2018-12-30 2020-07-07 贝壳技术有限公司 房产交易系统和外部机构业务系统的联调测试方法及装置
CN111752625A (zh) * 2020-06-23 2020-10-09 京东数字科技控股有限公司 用于接口mock的方法和装置
CN112052172A (zh) * 2020-09-04 2020-12-08 云账户技术(天津)有限公司 第三方通道的快速测试方法、装置和电子设备
CN112579473A (zh) * 2020-12-30 2021-03-30 北京百家科技集团有限公司 一种测试系统、方法、计算机设备及存储介质
CN114741313A (zh) * 2022-04-28 2022-07-12 重庆长安汽车股份有限公司 一种基于服务网关的soa服务系统在线调试方法
CN115134397A (zh) * 2022-06-28 2022-09-30 中国银行股份有限公司 一种自适应的交易挡板平台的实现方法、装置及设备

Citations (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105893227A (zh) * 2015-12-29 2016-08-24 乐视网信息技术(北京)股份有限公司 数据处理方法及装置
CN106294113A (zh) * 2015-06-03 2017-01-04 阿里巴巴集团控股有限公司 一种基于可编程式测试服务的创建方法及装置
CN106528393A (zh) * 2015-09-09 2017-03-22 北京京东尚科信息技术有限公司 一种WebService的Mock测试的方法及装置
CN106970873A (zh) * 2017-01-10 2017-07-21 阿里巴巴集团控股有限公司 线上mock测试方法、装置及系统
US20170300402A1 (en) * 2016-04-19 2017-10-19 Sap Se Mock server and extensions for application testing
CN107291612A (zh) * 2016-04-13 2017-10-24 阿里巴巴集团控股有限公司 一种测试的方法及装置
CN107329890A (zh) * 2017-06-06 2017-11-07 北京金山安全软件有限公司 基于Mock的测试方法、装置及服务器
CN107368405A (zh) * 2016-05-11 2017-11-21 腾讯科技(北京)有限公司 测试系统、测试方法、mock平台、拦截器和客户端
CN108199921A (zh) * 2017-12-29 2018-06-22 上海瑞家信息技术有限公司 一种模拟测试的方法、装置及存储介质
CN108255725A (zh) * 2018-01-18 2018-07-06 银联商务股份有限公司 测试方法及装置
CN108268372A (zh) * 2017-07-24 2018-07-10 深圳壹账通智能科技有限公司 Mock测试处理方法、装置、存储介质和计算机设备
CN108347356A (zh) * 2017-01-24 2018-07-31 北京京东尚科信息技术有限公司 一种多协议单元测试方法、装置、电子设备和存储介质
CN108427644A (zh) * 2018-03-27 2018-08-21 深圳市买买提信息科技有限公司 服务测试方法、服务测试系统及服务测试装置

Patent Citations (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106294113A (zh) * 2015-06-03 2017-01-04 阿里巴巴集团控股有限公司 一种基于可编程式测试服务的创建方法及装置
CN106528393A (zh) * 2015-09-09 2017-03-22 北京京东尚科信息技术有限公司 一种WebService的Mock测试的方法及装置
CN105893227A (zh) * 2015-12-29 2016-08-24 乐视网信息技术(北京)股份有限公司 数据处理方法及装置
CN107291612A (zh) * 2016-04-13 2017-10-24 阿里巴巴集团控股有限公司 一种测试的方法及装置
US20170300402A1 (en) * 2016-04-19 2017-10-19 Sap Se Mock server and extensions for application testing
CN107368405A (zh) * 2016-05-11 2017-11-21 腾讯科技(北京)有限公司 测试系统、测试方法、mock平台、拦截器和客户端
CN106970873A (zh) * 2017-01-10 2017-07-21 阿里巴巴集团控股有限公司 线上mock测试方法、装置及系统
CN108347356A (zh) * 2017-01-24 2018-07-31 北京京东尚科信息技术有限公司 一种多协议单元测试方法、装置、电子设备和存储介质
CN107329890A (zh) * 2017-06-06 2017-11-07 北京金山安全软件有限公司 基于Mock的测试方法、装置及服务器
CN108268372A (zh) * 2017-07-24 2018-07-10 深圳壹账通智能科技有限公司 Mock测试处理方法、装置、存储介质和计算机设备
CN108199921A (zh) * 2017-12-29 2018-06-22 上海瑞家信息技术有限公司 一种模拟测试的方法、装置及存储介质
CN108255725A (zh) * 2018-01-18 2018-07-06 银联商务股份有限公司 测试方法及装置
CN108427644A (zh) * 2018-03-27 2018-08-21 深圳市买买提信息科技有限公司 服务测试方法、服务测试系统及服务测试装置

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
SEBASTIAN GINGTER: "how to mock httpclient in your .net/c# unit test", 《HTTPS://GINGTER.ORG/2018/07/26/HOW-TO-MOCK-HTTPCLIENT-IN-YOUR-NET-C-UNIT-TESTS/》 *
孟燕: "自动化测试技术中Mock框架的建设与应用", 《武汉理工大学学报(信息与管理工程版)》 *

Cited By (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111382062B (zh) * 2018-12-30 2023-09-15 贝壳技术有限公司 房产交易系统和外部机构业务系统的联调测试方法及装置
CN111382062A (zh) * 2018-12-30 2020-07-07 贝壳技术有限公司 房产交易系统和外部机构业务系统的联调测试方法及装置
CN110334000A (zh) * 2019-05-07 2019-10-15 重庆天蓬网络有限公司 一种基于mock技术的测试方法
CN110362472A (zh) * 2019-05-31 2019-10-22 口碑(上海)信息技术有限公司 Mock测试方法、装置及设备
CN111078477A (zh) * 2019-11-13 2020-04-28 航天信息股份有限公司 接口测试的方法、装置、存储介质和电子设备
CN111090589A (zh) * 2019-12-19 2020-05-01 广州品唯软件有限公司 软件测试方法、软件测试装置及可读存储介质
CN111177003A (zh) * 2019-12-30 2020-05-19 北京同邦卓益科技有限公司 一种测试方法、装置、系统、电子设备及存储介质
CN111752625A (zh) * 2020-06-23 2020-10-09 京东数字科技控股有限公司 用于接口mock的方法和装置
CN112052172A (zh) * 2020-09-04 2020-12-08 云账户技术(天津)有限公司 第三方通道的快速测试方法、装置和电子设备
CN112052172B (zh) * 2020-09-04 2024-01-30 云账户技术(天津)有限公司 第三方通道的快速测试方法、装置和电子设备
CN112579473A (zh) * 2020-12-30 2021-03-30 北京百家科技集团有限公司 一种测试系统、方法、计算机设备及存储介质
CN114741313A (zh) * 2022-04-28 2022-07-12 重庆长安汽车股份有限公司 一种基于服务网关的soa服务系统在线调试方法
CN115134397A (zh) * 2022-06-28 2022-09-30 中国银行股份有限公司 一种自适应的交易挡板平台的实现方法、装置及设备

Also Published As

Publication number Publication date
CN109101430B (zh) 2022-08-09

Similar Documents

Publication Publication Date Title
CN109101430A (zh) 测试方法、装置和设备
US11822919B2 (en) Auto-generation of API documentation via implementation-neutral analysis of API traffic
CN108848092B (zh) 基于调用链的微服务灰度发布的处理方法及装置
US8977739B2 (en) Configurable frame work for testing and analysis of client-side web browser page performance
CN108984389B (zh) 一种应用程序测试方法及终端设备
US9268547B2 (en) Conditional logic for delivering computer-executable program instructions and content
CN110337641A (zh) 使用屏幕截图元数据确定应用测试结果
US11403208B2 (en) Generating a virtualized stub service using deep learning for testing a software module
CN107133180A (zh) 动态页面的测试方法、测试装置及存储介质
CN105160027B (zh) 广告数据处理方法及装置
CN109783388A (zh) Ui自动化测试方法、装置及电子设备
CN107276842B (zh) 接口测试方法、装置及电子设备
CN108958992A (zh) 测试方法和装置
CN106681921A (zh) 数据参数化的实现方法和装置
CN109739526A (zh) 代码更新方法和装置
CN103559222A (zh) 浏览器中显示页面加载时间的方法和装置
CN110442502A (zh) 一种埋点的方法、装置、设备及存储介质
CN109947624A (zh) 状态监控方法及装置
CN107220066A (zh) 应用商店中应用软件的发布方法及装置
CN109656799A (zh) 测试方法和装置
US20180210819A1 (en) System and method of controlling a web browser plug-in for testing analytics
CN114564203A (zh) 一种业务运行方法、装置、电子设备及可读介质
CN109582317A (zh) 用于调试寄宿应用的方法和装置
CN109670126A (zh) 一种跨境访问加速方法及装置
US20170277710A1 (en) Data comparison

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
TA01 Transfer of patent application right
TA01 Transfer of patent application right

Effective date of registration: 20200924

Address after: Cayman Enterprise Centre, 27 Hospital Road, George Town, Grand Cayman Islands

Applicant after: Innovative advanced technology Co.,Ltd.

Address before: Cayman Enterprise Centre, 27 Hospital Road, George Town, Grand Cayman Islands

Applicant before: Advanced innovation technology Co.,Ltd.

Effective date of registration: 20200924

Address after: Cayman Enterprise Centre, 27 Hospital Road, George Town, Grand Cayman Islands

Applicant after: Advanced innovation technology Co.,Ltd.

Address before: A four-storey 847 mailbox in Grand Cayman Capital Building, British Cayman Islands

Applicant before: Alibaba Group Holding Ltd.

GR01 Patent grant
GR01 Patent grant
TR01 Transfer of patent right
TR01 Transfer of patent right

Effective date of registration: 20240218

Address after: Guohao Times City # 20-01, 128 Meizhi Road, Singapore

Patentee after: Advanced Nova Technology (Singapore) Holdings Ltd.

Country or region after: Singapore

Address before: Ky1-9008 Cayman Enterprise Centre, 27 Hospital Road, George Town, Grand Cayman Islands, ky1-9008

Patentee before: Innovative advanced technology Co.,Ltd.

Country or region before: Cayman Islands