The invention discloses a method, a simulation service includes the following steps: Simulation of external service behavior to launch the simulator initialization operation, edit the analog matching condition and preset response after initialization of the simulator, for monitoring link pile; intercept issued by the measured service request to start with the measured service the same IP simulator; analysis intercept the request and after parsing the request sent to the simulator, pile; pile, receives the request of simulator analysis, according to the simulation of matching condition matching is performed in order; if the matching is successful, the simulator, is sent to the preset pile response measured service. The invention also discloses a device for simulating service and centralized management platform, debugging and simulation service test, debugging, abnormal scenes and complex scene test of the invention is to simplify the testing personnel, simplified pressure test data and test environment, to improve the work efficiency of simulation service.
【技术实现步骤摘要】
一种模拟服务的方法、装置及集中管理平台
本专利技术涉及测试领域,特别涉及一种模拟服务的方法、装置及集中管理平台。
技术介绍
随着社会科学技术的发展,企业的管理内部服务的系统涉及到的业务场景和联调测试数据非常复杂,企业应用的系统很少孤立存在,大部分系统都是依赖于不同软件供应商提供的服务拼装到一起。而现有多种服务模拟框架或者系统基本都是需要编写代码而且主要是研发仅限于单元测试或者集成测试,且只支持HTTP、SOCKS等通用协议的模拟。而对于测试人员主要做是是黑盒测试,但编码能力有限制和业务压力,其要编写一个mock去模拟外部服务困难重重,非常影响工作效率。特别是,一些大型互联网公司,一个系统往往是依赖多个外部系统,涉及到的业务场景和联调测试数据非常复杂,常常会遇到以下几种情况:1、A服务调B服务,B服务由于某些原因不可用或不稳定(例如登陆页面调一个登陆的passport.api,但是passport.api连不上导致无法登陆);2、A服务调B服务,B服务的数据或场景难以构造(例如登陆页面调一个登陆的passport.api,passport.api会在某些极端情况下返回一些错误码;3、自动化测试时,A服务调B服务,由于B服务不可控,数据经常变动导致测试数据经常变化。因为以上原因,导致因依赖外部服务而无法进行服务操作,影响工作效率。
技术实现思路
本专利技术的主要目的是提出一种模拟服务的方法、装置及集中管理平台,旨在提高模拟服务的工作效率。为实现上述目的,本专利技术提出的一种模拟服务的方法,包括步骤:模拟外部服务行为启动模拟器初始化操作,在初始化后的模拟器的桩匹配器 ...
【技术保护点】
一种模拟服务的方法,其特征在于,包括步骤:模拟外部服务行为启动模拟器初始化操作,在初始化后的模拟器的桩匹配器中编辑模拟匹配条件及预设响应;模拟器启动的与被测服务同一IP的监听链路拦截由被测服务发出的请求;解析所拦截的请求并将解析后的请求传送至模拟器的桩匹配器;模拟器的桩匹配器接收解析后的请求,根据模拟匹配条件执行匹配命令。
【技术特征摘要】
1.一种模拟服务的方法,其特征在于,包括步骤:模拟外部服务行为启动模拟器初始化操作,在初始化后的模拟器的桩匹配器中编辑模拟匹配条件及预设响应;模拟器启动的与被测服务同一IP的监听链路拦截由被测服务发出的请求;解析所拦截的请求并将解析后的请求传送至模拟器的桩匹配器;模拟器的桩匹配器接收解析后的请求,根据模拟匹配条件执行匹配命令。2.如权利要求1所述的模拟服务的方法,其特征在于,所述模拟外部服务行为启动模拟器初始化操作,在初始化后的模拟器的桩匹配器中编辑模拟匹配条件及预设响应的步骤包括:根据被测服务的请求选择模拟测试架构,且在所选择的模拟测试架构中,模拟外部服务行为启动一个或多个不同协议服务的模拟器;根据被测服务的当前协议服务请求选择模拟器当前协议链路的配置,将被测服务请求的IP修改为模拟器的IP,以将被测服务的请求指向模拟器启动的监听链路的端口;根据模拟外部服务行为的意图,在模拟器的桩匹配器中编辑模拟匹配条件及预设响应为桩,参数化桩生成桩参数。3.如权利要求2所述的模拟服务的方法,其特征在于,所述根据被测服务的当前协议服务请求选择模拟器当前协议链路的配置的步骤包括:若被测服务的当前协议服务为通用协议服务,则修改DNS配置,把被测服务请求的IP指向模拟器的IP,配置Nginx,利用Nginx的端口映射,把被测服务的请求指向模拟器启动的监听链路的端口;若被测服务的当前协议服务为自定义协议服务,通过OSP的静态路由的IP和端口,把被测服务请求的IP直接指向模拟器的IP和对应OSP链路的监听链路的端口。4.如权利要求1所述的模拟服务的方法,其特征在于,所述解析拦截的请求并将解析后的请求传送至模拟器的桩匹配器的步骤包括:解析所拦截的请求生成请求参数;将请求参数转换为统一的封装不同协议的请求对象;传送请求对象至模拟器的桩匹配器。5.如权利要求1所述的模拟服务的方法,其特征在于,所述模拟器的桩匹配器接收解析后的请求,根据模拟匹配条件执行匹配命令的步骤包括:桩匹配器接收解析后的请求;调用桩参数;解析桩参数,以释放模拟匹配条件和预设响应;调用模拟匹配条件,执行匹配命令。6.如权利要求1所述的模拟服务的方法,其特征在于,所述模拟器的桩匹配器接收解析后的请求,根据模拟匹配条件执行匹配命令的步骤之后包括:若匹配成功,模拟器的桩匹配器发送预设响应至被测服务;若匹配失败,模拟器的桩匹配器转发解析后的请求至外部服务,并接收外部服务发出的对请求的真实响应,传送至被测服务。7.如权利要求1至6任一项所述的模拟服务的方法,其特征在于,在所述模拟器的监听链路拦截由同一IP的被测服务发出的请求的步骤和所述解析拦截的请求并将解析后的请求传送至模拟器的桩匹配器的步骤之间还包括:模拟器的监听链路监测所拦截的请求;若监测所拦截的请求不需要返回预设响应时,暂停所述监听链路,直接转发被测服务发出的请求至外部服务,并接收外部服务对请求的真实响应返回至被测服务;若监测所拦截的请求不需要使用模拟器时,停止所述监听链路,模拟服务关闭监听端口,返回报错信息。8.如权利要求1至6任一项所述的模拟服务的方法,其特征在于,所述模拟外部服务行为启动模拟器初始化操作,在初始化后的模拟器的桩匹配器中编辑模拟匹配条件及预设响应的步骤之前包括:呈现解耦依赖的执行情况时,执行解耦依赖。9.一种模拟服务的装置,其特征在于,包括:初始化模块,用于模拟外部服务行为启动模拟器初始...
【专利技术属性】
技术研发人员:马家麒,梁议尹,黄嵘,
申请(专利权)人:广州唯品会信息科技有限公司,
类型:发明
国别省市:广东,44
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。