Postman | Mock Server

如何使用模拟服务器来自定义一个 API?

Posted by Haauleon on April 12, 2021

背景

mock 在单元测试中的应用

  mock 其中一个意思是模仿。主要应用于单元测试领域,用来辅助完成单元测试。在实际生产中对项目进行单元测试的时候,会遇到以下问题:

  • 接口的依赖
  • 外部接口调用
  • 测试环境非常复杂

  单元测试应该只针对当前单元进行测试,所有的内部或外部的依赖应该是稳定的。而使用 mock 可以通过对外部依赖组件实现进行模拟并替换,从而解除单元测试中的接口依赖性问题,降低编写单元测试用例的难度。因此,在单元测试中,开发人员只需要将焦点放在当前的单元功能即可。



mock 在架构模式中的应用

  目前最常见的应用模式是前后端分离,即后端仅返回前端所需的数据,不再渲染 HTML 页面,不再控制前端的效果。所以,前端与后端的耦合度相对较低。
  后端开发的每一个视图都称为一个接口,或者 API,前端通过访问接口来对数据进行增删改查。在项目开发期间,前后端预先商定好数据接口的交互形式和数据格式(最好拟定一份 API 规范文档),然后实现前后端的并行开发。前端提前完成开发后通过创建 mock server 来模拟接口的响应以此调试代码,等后端开发完毕,仅需要将 mock server 的 host 地址替换成后端服务 host(可使用环境占位变量)即可。



使用技巧

一、创建 Mock Server 服务

1.在标题工具栏中,单击NEW按钮后,在新窗口选择 mock server。


2.在编辑窗口的左侧选择New API,在右侧依次输入Request PathStatus CodeResponse Body,输入完成后点击Next
Request Path:要请求的路径名
Status Code:响应状态码,比如 200、500、504 等等
Response Body:返回结果


3.在配置 mock server 时,默认创建公有的 mock server。输入Name后点击Create


4.在最后一步时点击左半框内的Host,便可生成要请求的Host



二、发送 Mock 请求

1.把生成的 Host 拼接到 API 前(建议使用环境变量),并发送请求,可成功获取返回结果。




三、篡改 Mock 请求

1.在页面右上角点击Examples,在下拉列表中选择Default。在Default编辑页面编辑要修改的信息,修改完成后点击Save Examples



2.修改完成后返回至请求页面,重新发送请求。在不改变原请求的情况下,请求后返回了 404。这是因为刚刚修改了请求方式,说明修改生效了。


3.修改请求方式和正确填写参数后,再次发送请求,请求成功。



结论

  Postman 的 mock server 服务也可用于测试人员,主要使用场景为解决 API 接口自动化测试中的接口依赖问题。