mock测试方法、装置及设备制造方法及图纸

技术编号:18575768 阅读:15 留言:0更新日期:2018-08-01 10:46
本说明书实施例公开了mock测试方法、装置及设备。通过服务端向客户端中自动注入mock脚本(例如接收到客户端发送的访问请求时直接注入),然后通过脚本拦截待测试的应用调用容器接口的请求,并转发服务端,通过服务端中的mock配置文件来确定本次返回的结果是真实结果还是mock响应结果,以进行各种业务测试。

Mock testing methods, devices and equipment

The embodiment of the specification discloses a mock test method, device and device. Automatically injecting mock scripts from the server to the client (for example, directly injecting the access requests sent by the client), and then intercepting the request of the application call container interface to be tested by the script and forwarding the server, and using the mock configuration file in the server to determine whether the result returned is true or M The ock responds to the results of a variety of business tests.

【技术实现步骤摘要】
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响应结果或者返回所述请求至所述容器接口;接收服务端的返回结果,进行业务处理。对应的,本说明书的实施例还提供另一种非易失性计算机存储介质,存储有计算机可执行指令,所述计算机可执行指令设置为:服务端接收客户端调用容器接口的请求,所述请求由mock脚本拦截得到;响应所述请求,确定返回对应的mock响应结果或者返回所述请求至所述容器接口;发送所述请求的返回结果至所述客户端。本说明书实施例采用的上述至少一个技术方案能够达到以下有益效果:在本说明书实施例中,通过服务端向客户端中自动注入mock脚本(例如接收到客户端发送的访问请求时直接注入),然后通过脚本拦截待测试的应用调用容器接口的请求,并转发服务端,通过服务端中的mock配置文件来确定本次返回的结果是真实结果还是mock响应结果,以进行各种业务测试。在测试过程中,可通过用户终端直接访问本地开发服务器提供的页面即可,无需进行任何配置,方便其他人进行测试验证;通过配置文件来灵活控制返回的是真实的返回还是mock返回,灵活性强,从而实现动态更改,方便自行维护和扩展。此外,测试成功再将产品上线,并没有对业务代码进行改动,也不需要在业务代码中修改相应的配置文件,因此从根本上解决了产品上线时忘记切换代码导致的线上故障;通过使用本地服务器,也能有效避免远程服务不可用导致无法工作的情况。附图说明图1为本说明书实施例所涉及的架构示意图;图2为本说明书实施例提供的客户端方面的mock测试方法的流程示意图;图3为本说明书实施例提供的服务端方面的mock测试方法的流程示意图;图4为本说明书实施例所提供的产品上线以后线上实际调用的示意图;图5为本说明书实施例所提供客户端方面的mock测试装置的结构示意图;图6为本说明书实施例所提供服务端方面的mock测试装置的结构示意图。具体实施方式为使本申请的目的、技术方案和优点更加清楚,下面将结合本申请具体实施例及相应的附图对本申请技术方案进行清楚、完整地描述。显然,所描述的实施例仅是本申请一部分实施例,而不是全部的实施例。基于本说明书中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。HTML5(超文本标记语言第五代标准,HyperTextMarkupLanguage,HTML5)应用(也可简称为H5应用)为在手机原生应用(NativeApp)中嵌入使用的web页面或者web应用,HTML5应用要想调用手机原生提供的功能,需要通过其宿主原生应用来提供,而宿主原生应用都会通过HTML5应用容器来装载HTML5应用,从而通过HTML5应用容器监听HTML5应用的请求,完成特定的功能,返回需要的结果。因此,在HTML5应用开发、测试时,需要开发和测试人员模拟HTML5应用容器的返回结果,这个过程被称为mock。在现有技术中进行mock的方法有如下多种:通过直接修改业务代码的方法来mock,对业务侵入大;通过网络代理的方式进行mock,验证时需要进行网络代理配置,非常繁琐;调用远程服务返回的内容来作为mock数据,不够灵活,无法快速更改返回内容,远程服务一旦挂掉也会影响自身的开发、测试工作。此外,HTML5应用容器的返回结果会受软件、硬件、系统环境等多方面的影响,而且开发、测试时可能需要正常、异常等各种各样的返回。基于此,本说明书实施例提供mock测试方案,在开发服务器中向客户端中自动注入mock脚本,用来拦截应用对容器接口的调用请求,然后转发服务端。然后通过服务端本地的mock配置文件来决定返回结果,以实现更方便的测试工作。图1为本说明书实施例所涉及的架构示意图。在本说明书的实施例中,所述的mock测试方法可采用如图1所示的架构,在该架构中,客户端可以是安装于包括诸如智能手机、平板电脑等用户终端上,服务端可以提供一个地址(例如,一个统一资源定位符(UniformResourceLocator,URL))以供用户终端连接。由于本方案通常用于开发和测试中,因此上述的服务端通常是测试服务端。换言之,它应该与产品上线时的线上服务端为不同的服务端。下面将基于如图1所示的架构,详细说明本说明书的实施例提供的mock测试方法,该方法具体包括客户端和服务端两个方面,对于客户端方面的执行流本文档来自技高网...

【技术保护点】
1.一种mock测试方法,包括:客户端发起调用容器接口的请求;拦截所述请求并发送至服务端,以便服务端响应所述请求,返回对应的mock响应结果或者返回所述请求至所述容器接口;接收服务端的返回结果,进行业务处理。

【技术特征摘要】
1.一种mock测试方法,包括:客户端发起调用容器接口的请求;拦截所述请求并发送至服务端,以便服务端响应所述请求,返回对应的mock响应结果或者返回所述请求至所述容器接口;接收服务端的返回结果,进行业务处理。2.如权利要求1所述的方法,若所述服务端返回所述请求至所述容器接口,所述根据服务端的返回结果,进行业务处理,具体包括:获取通过所述容器接口对所述服务端返回的所述请求处理得到的真实响应结果;根据所述真实响应结果,进行业务处理。3.如权利要求1所述的方法,所述拦截所述请求并发送至服务端,包括:通过预先注入的mock脚本,拦截所述请求并发送至服务端。4.如权利要求1至3任一所述的方法,所述请求包括HTML5页面请求,所述容器接口包括HTML5应用容器接口。5.一种mock测试方法,包括:服务端接收客户端调用容器接口的请求,所述请求由mock脚本拦截得到;响应所述请求,确定返回对应的mock响应结果或者返回所述请求至所述容器接口;发送所述请求的返回结果至所述客户端。6.如权利要求5所述的方法,还包括:向客户端中注入mock脚本,所述mock脚本用于拦截客户端所发送的调用容器接口的请求,并转发至服务端。7.如权利要求5所述的方法,所述基于所述请求,确定返回对应的mock响应结果或者返回所述请求至所述容器接口,包括:基于预先设置的配置文件,响应所述请求,确定返回对应的mock响应结果或者返回所述请求至所述容器接口。8.如权利要求7所述的方法,所述确定返回对应的mock响应结果或者返回所述请求至所述容器接口,包括:确定本次请求的返回结果全部为所述mock响应结果;或者,确定本次请求的返回结果全部为返回所述请求至所述容器接口;或者,确定本次请求的返回结果中部分为所述mock响应结果,其余的部分为返回所述请求至所述容器接口。9.如权利要求7所述的方法,还包括:接收用户的指令,以修改所述配置文件;根据所述修改后的配置文件响应所述请求,确定所述请求的返回结果。10.如权利要求5所述的方法,所述服务端和所述mock脚本基于JavaScript。11.如权利要求5所述的方法,所述客户端和所述服务端均位于本地。12.如权利要求5至11任一所述的方法,所述请求包括HTML5页面请求,所述容器接口包括HTML5应用容器接口。13.一种mock测试装置,包括:请求发起模块,客户端发起调用容器接口的请求;拦截模块,拦截所述请求并发送至服务端,以便服务端响应所述请求,返回对应的mock响应结果或者返回所述请求至所述容器接口;接收模块,接收服务端的返回结果,进行业务处理。14.如权利要求13...

【专利技术属性】
技术研发人员:李旭东
申请(专利权)人:阿里巴巴集团控股有限公司
类型:发明
国别省市:开曼群岛,KY

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1