MockServer 服务框架
大部分现有的 mock 工具只能满足 HTTP 协议下简单业务场景的使用。但是面对一些复杂的业务场景就显得捉襟见肘,比如对 socket 协议的应用进行 mock,或者对于支付接口的失败重试的定制化 mock 场景。
为解决上述问题,霍格沃兹测试学院设计并研发了 CSRMockServer 在下面的文章中简称 mock server。
mock server 相较于这些 mock 工具,具有规则更灵活、定制化更强、支持拓展多协议的特点。在本章节将会从架构设计介绍如何实现以上的特点,而在实战章节,会针对具体的测试场景,演示不同的解决方案。
框架设计
若想实现上述特点,一定要有一个合理的架构设计。
mock server 架构设计:
框架的设计主要分为五个部分:
客户端
- 客户端主要负责与 mock 服务的交互,由测试人员制定 mock 的请求响应规则,以及启动/停止 mock 服务。
代理
- 负责请求和响应的收发,接收到请求后,先转发给 Mock 引擎,mock 引擎收到请求响应数据进行处理后,再返回给代理响应信息,代理给服务器返回模拟的响应值。
协议(protocol)
- 不同的协议的请求、响应数据格式往往不相同,既有标准的 json 结构体,也有二进制或十六进制的数据类型。这部分数据需要在协议层进行处理之后,才好进行相关的逻辑处理。所以协议层(protocol)主要负责和协议相关的数据处理。
- protocol 还具备很强的很拓展性,如果一个系统涉及到了多协议的 mock,测试人员可以给不同的协议指定不同的规则,以此达到多协议 mock 的作用。具体的使用会在后面的章节进行演示。
Mock引擎
- mock 逻辑的驱动引擎,根据不同功能模块的请求,分发给 mock 服务的对应的实现接口。
后台服务
- 提供与 mock 服务交互的对外接口。
设计优点
- 提供了后台服务接口,测试人员添加规则、控制 mock 服务更加灵活
- 定制化更强,内置支持根据索引、消耗、mock 后添加动作等操作
- 通过切换不同的 protocol 与代理服务,即可实现多协议的支持,扩展性强
mock server 框架就先介绍这些,后面将会演示 mock server 的使用流程哦。
更多技术文章
MockServer 服务框架相关推荐
- MockServer 服务框架设计
大部分现有的 mock 工具只能满足 HTTP 协议下简单业务场景的使用.但是面对一些复杂的业务场景就显得捉襟见肘,比如对 socket 协议的应用进行 mock,或者对于支付接口的失败重试的定制化 ...
- [转载]Surging 分布式微服务框架使用入门
前言 本文非 Surging 官方教程,只是自己学习的总结.如有哪里不对,还望指正. 我对 surging 的看法 我目前所在的公司采用架构就是类似与Surging的RPC框架,在.NET 4.0框架 ...
- python 微服务框架 知乎_序: 我需要一个什么样的微服务框架
前言 新坑第一篇文章, 做一个开篇的序吧. 开发了很多 python 的 web 微服务, 也使用过很多 web 框架, django, tornado, flask, 等等等等. 不同的 web 框 ...
- 分布式服务框架 Zookeeper -- 管理分布式环境中的数据
2019独角兽企业重金招聘Python工程师标准>>> 转自:http://www.ibm.com/developerworks/cn/opensource/os-cn-zookee ...
- go微服务框架go-micro深度学习(一) 整体架构介绍
产品嘴里的一个小项目,从立项到开发上线,随着时间和需求的不断激增,会越来越复杂,变成一个大项目,如果前期项目架构没设计的不好,代码会越来越臃肿,难以维护,后期的每次产品迭代上线都会牵一发而动全身.项目 ...
- Oracle发布开源的轻量级 Java 微服务框架 Helidon
近日,Oracle推出了一个新的开源框架Helidon,该项目是一个用于创建基于微服务的应用程序的Java库集合.和Payara Micro.Thorntail(之前的WildFly Swarm).O ...
- 百变应用场景下,优酷基于图执行引擎的算法服务框架筑造之路!
作者| 阿里文娱高级专家 随方, 阿里文娱开发专家 轩成 责编 | 屠敏 头图 | CSDN 下载自视觉中国 背景 在阿里的业务中,有广泛的算法应用场景,也沉淀了相关的算法应用平台和工具:基础的算法引 ...
- 分布式服务框架-原理与实践:14---流量控制-学习笔记(理论篇)
2019独角兽企业重金招聘Python工程师标准>>> 上次学了灰度发布,这次我们学习流控. ============================================ ...
- Android Google 服务框架相关问题
为什么80%的码农都做不了架构师?>>> 两年没发文了~ 先说现象: 1.定制 ROM,打包时在 /system/priv-app 目录下添加了谷歌服务框架相关 apk(Gms ...
- 企业级微服务框架落地
根据康威定律,当互联网公司业务和团队发展到一定规模,微服务架构是一种必然的演化趋势.我们看看唯品会对微服务框架体系的建设及实践. 先来看一下唯品会微服务基础中台架构的设计思路.围绕微服务,唯品会自主研 ...
最新文章
- angularjs与后台传值接收值
- 计算约化重叠积分氟化氢HF
- Acess link
- 注入游戏没有焦点_数独游戏 数学之美(三)
- VTK:PolyData之HighlightBadCells
- 《iOS应用逆向工程(第2版)》高清电子书 PDF
- java 内部编码_Java 中文编码分析
- 组装台式电脑配置清单_攒机必备!各种价位的台式电脑配置清单!
- MIP开发教程(三) 使用MIP-CLI工具调试组件
- vue接收索引_前端开发:Vue中findIndex() 方法的使用
- idea生成类中序列化id
- puppet详解(九)——puppet项目实战
- 【渝粤教育】电大中专电商运营实操 (10)作业 题库
- vue 读取地址栏参数
- Kubernetes部署记录
- 【GDAL基础教程】多张二维tif数据转三维tif数据
- 英语基础-疑问句概述
- windows xp查看缩略图时有缩略图没有文件名
- markdown语法下
- 3月18日云栖精选夜读 | 开发者必看!探秘阿里云Hi购季开发者分会场:海量学习资源0元起!... 1