背景

在我司 S 产品测试时,日常工作有百分之 70 是需要跟接口测试打交道,搭建的 MockServer 有数十个。 接触过多个搭建 MockServer 平台,整理成文,分享之。

目录

part1:Mock Server是什么
part2:为什么要使用Mock Server
part3:Mock server能干什么
part4:Mock server的弊端
part5:搭建Mock Server有哪些方式

MockServer是什么

MockServer可用于模拟任何通过HTTP或HTTPS(即服务、web站点等)集成的系统
当MockServer接收到请求时,它将根据已配置的活动预期匹配请求
期望定义所采取的操作,例如,可以返回响应

用我的话来说:
一个能模拟 正式服务的 一个虚拟服务 ,能返回 response 。

我司S产品使用 MockServer 大部分场景都是如上所示 。

我司S产品是需要跟其他公司进行对接的,其他公司提供 接口文档、正式接口地址,但未提供测试接口地址。

开发提测之后,我们测试环境是会有一些BUG, 我们如果去调用对方的生产环境的 API 接口会产生很多的脏数据,无效数据。

我们只能调用对方的测试环境的API 接口,但
1.对接文档中未提供这样的一个测试环境API接口调用地址
2.若对方提供了,我们也不会去调用,因为如果哪一天对方的测试环境出现问题,我们是不能正常的测试的, 对别人的依赖性太强了 。

所以我司S产品,测试时,测试工程师会自己搭建MockServer来模拟第三方服务。

MockServer用处

官方解释:
测试
轻松地为HTTP依赖项(如REST或RPC服务)重新创建所有类型的响应,以便轻松有效地测试应用程序

脱钩发展
在服务可用之前,开始对服务API进行操作。如果一个API或服务还没有完全开发好,MockServer可以模拟该API,允许使用该服务的任何团队立即开始工作

Mock server能干什么

  • 构造测试所需要的、不同的、异常场景的response,以覆盖更多的场景
  • 方便测试
  • 前端好了,但后端还没好,前端用于联调测试
  • 我司与第三方接口联调时,第三方还没好/不支持测试接口时,可以搭建 Mock

Mock server 弊端

时间成本。需要根据对接文档构造对应的response,且不同场景的覆盖,需要经常手动的篡改response返回的值

非真实的环境。可能对方API接口返回的数据变更了,但文档未及时更新,而我们是根据文档构造的response,会遇到发布生产后,发现生产环境存在问题

对方API的实际实现与文档有出入。

搭建Mock Server有哪些方式

代码
工具:
Postman
eolinker
easymock
easydoc
metersphere
等等

搭建Mock Server实践(一)理论篇相关推荐

  1. 搭建Mock Server

    搭建Mock Server 1.为什么要搭建mock-server? 为了更好的分工合作,让前端能在不依赖后端环境的情况下进行开发,其中一种手段就是为前端开发者提供一个 web 容器,这个本地环境就是 ...

  2. 从0开始搭建SQL Server AlwaysOn 第四篇(配置异地机房节点)

    从0开始搭建SQL Server AlwaysOn 第四篇(配置异地机房节点) 第一篇 http://www.cnblogs.com/lyhabc/p/4678330.html 第二篇 http:// ...

  3. 如何用Serverless搭建Mock Server?

    引言 (一)什么是Serverless 无服务器Serverless是一种云原生开发模型,可使开发人员专注构建和运行应用,而无需管理服务器.云函数(Serverless Cloud Function, ...

  4. 从0开始搭建SQL Server AlwaysOn 第三篇(配置AlwaysOn)

    从0开始搭建SQL Server AlwaysOn 第三篇(配置AlwaysOn) 第一篇 http://www.cnblogs.com/lyhabc/p/4678330.html 第二篇 http: ...

  5. java mockserver搭建_搭建Mock Server

    1.为什么要搭建mock-server? 为了更好的分工合作,让前端能在不依赖后端环境的情况下进行开发,其中一种手段就是为前端开发者提供一个 web 容器,这个本地环境就是 mock-server. ...

  6. 用 java 安装 mockserver_前端工程化-Mock Server:使用Node+json-server+mock.js搭建Mock Server...

    目的 为了便于前后端分离开发,前端在本地启动mock服务进行开发,后续对接联调时只需将接口地址改成真实地址即可. 一个优秀的mock server应具备以下功能: 随机数据生成,避免手动创建数据: 真 ...

  7. (转) 从0开始搭建SQL Server AlwaysOn 第三篇(配置AlwaysOn)

    原文地址: http://www.cnblogs.com/lyhabc/p/4682986.html 这一篇是从0开始搭建SQL Server AlwaysOn 的第三篇,这一篇才真正开始搭建Alwa ...

  8. 基于django rest framework的mock server实践

    网上找了一下mock server的实现,发现python的基本都是基于flask来实现的,因最近在学django,就尝试用drf实现了下: A brief introduction of sui_m ...

  9. Mock Server实践

    背景 在美团服务端测试中,被测服务通常依赖于一系列的外部模块,被测服务与外部模块间通过REST API或是Thrift调用来进行通信.要对被测服务进行系统测试,一般做法是,部署好所有外部依赖模块,由被 ...

最新文章

  1. 搭建服务器环境 安装jdk、mysql、Tomcat 以及配置https 记录
  2. iometer硬盘测试工具附教程
  3. linux命令--提升
  4. 魔法科技迈吉客未来起飞路径猜想
  5. python logging模块之handlers的使用教程
  6. 清晰版 构建最高可用oracle数据库系统.pdf,构建最高可用Oracle数据库系统
  7. 如何在AWS中启动EC2实例
  8. C#文件目录IO常见操作汇总
  9. 菜鸟学习笔记:Java基础篇6(数组、字符串)
  10. mysql执行动态说起来_MySQL实战45讲学习笔记:第十四讲
  11. 搭建网站-Disczu
  12. JavaScript加密库Crypto-JS的使用
  13. Apollo(阿波罗)是携程框架部门研发的分布式配置中心,ubuntu本机安装
  14. 【面向代码】学习 Deep Learning(一)Neural Network
  15. 固高运动控制卡的使用 2 关于IO的访问以及调用(C#版)
  16. 关于如何卸载VS2012
  17. ViolentMonkey暴力猴插件V2.13.0
  18. Django开发个人博客网站——11、通过regroup实现博客的归档
  19. 如何将1080P的腾讯视频QLV格式转换成MP4视频呢
  20. 搭建vue脚手架全教程

热门文章

  1. 解决applet覆盖遮罩层div的问题
  2. 643. 子数组最大平均数 I
  3. android 11 版本更新内容,android 11怎么更新 android 11更新方法
  4. 为什么root下不能使用passwd命令_基于centos7下安装部署openldap+phpldapadmin
  5. matlab图像水印技术研究,动态图像数字水印matlab的实现开题报告.doc
  6. 下拉推广系统立择火星推荐_【电商干货】拼多多搜索推广 如何选对致命关键词 ?...
  7. datastage odbc mysql,Linux系统odbc配置实现Datastage8.x连接mssqlserver数据库
  8. linux crontab 每5分钟执行一次_第十一章:走进Linux世界——源码包管理and任务计划。...
  9. C++面试题-面向对象-面向对象概念
  10. DALSA相机平场校正步骤