zoukankan      html  css  js  c++  java
  • 还在写代码造假数据联调?真 Low!试试 PostMan Mock,真香!!

    现在都是前后端分离架构,一般是后端人员先设计好接口定义,然后前端人员就可以根据接口定义进行开发了,前期前后端独立开发,互相不影响。

    那么问题来了,如果到了中后期,前端开发完了,后端还没开发完,那前端要傻傻地等后端开发完再联调测试吗?到那时,就太晚了,前端的质量就没法保证,一般后端要弄个 Mock 测试,后端提供接口虚拟数据让前端能够提前测试,待后端开发完后再进行真实数据的联调。

    前面栈长介绍了一款阿里巴巴开源的 Mock 工具:TestableMock,该工具号称最轻量、简单、舒适的 Mock 测试工具,功能十分强大,还能和单元测试集成,不挑框架,点击上面的链接可以看详细介绍及实战教程。这个工具是后端单元测试集成时用的,并不能用作前端的 Mock 独立测试。

    也许现在还有人在用写代码的方式造假数据,那太低效了,今天栈长就介绍一款简单的 Mock 测试方法,能让前端独立开发、模拟测试,Postman 就能搞定!

    一、创建 Mock Server

    本文,栈长以最新的 Postman 8.0.6 为例进行演示。

    打开 Postman,并切换到 Mock Servers 面板:

    可以看到 Mock Server 的定义:

    Mock servers let you simulate endpoints and their corresponding responses in a collection without actually setting up a back end.

    翻译一下:

    Mock 服务器可以让你模拟端点及对应的响应,而无需设置后端。

    点击 "Create new Mock Server" 文字,开始创建一个新的 Mock Server。

    这里栈长选择创建一个新集合(也可以选择已有的集合),然后新建了两个请求及对应的模拟响应数据。

    下一步,开始进入 Mock Server 相关配置:

    输入 Mock 服务器名称,选中保存服务器 URL 为环境变量选项,最后完成 Mock Server 创建:

    创建完后需要做两件事:

    1、为每个请求添加 Mock Server 示例响应;

    示例添加参考资料:

    https://go.pstmn.io/docs-examples

    2、发送 Mock Server Url 请求;

    Mock Url 如下:

    https://41783d96-2f22-4ed6-ac64-62187a0ee521.mock.pstmn.io

    这是个公网链接,只有有网,前端就能联调测试。

    二、发起 Mock 请求

    打开集合(Collections)面板:

    可以看到已经创建的 javastack-mock 集合,及之前创建的两个请求及默认示例响应,以及创建的 Mock Server Url 环境变量。

    既然已经生成了默认的示例响应,那么直接开始发起 Mock 请求吧,选中一个 get 请求,发起请求:

    如图所示:响应返回了默认的示例响应数据。

    三、添加自定义示例

    实际测试过程中,默认的示例响应数据可能不能满足要求,可以再新增自定义示例,根据增加请求参数来判断走哪个示例,如现在添加一个示例:

    为这个示例响应增加了 name 参数和不同的响应数据:

    然后再回到 get 请求,加上 name 参数:

    发起请求,可以看到现在 get 请求走的是新创建的示例,而没有走默认的,就是根据新加的参数来判定的,只要 URL 和参数匹配就会走对应的示例。

    四、Mock 历史记录

    回到 Mock Server 面板:

    可以看到 Mock Server 历史请求记录。

    随便点开一条记录可以看请求、响应详细数据:

    总结

    今天主要分享了 Postman Mock Server 的使用,其他更多的细节可以再自己摸索哦。

    不管你是做前端的还是做后端的,如果你有这方面的 Mock 需求,公司又没有 Mock 流程和规范,那都可以拿起 Postman 试试,毕竟它很简单、方便,可以很轻松的实现一个 Mock Server,而不必写任何代码,难道不香吗?

    好了,今天的分享就到这了,后面我还会陆续分享更多好玩的开发技术,关注公众号Java技术栈第一时间推送。

    你有更多好玩的东西,也欢迎留言分享!

    关注我,不迷路!

    版权申明:本文系公众号 "Java技术栈" 原创,原创实属不易,转载、引用本文内容请注明出处,禁止抄袭、洗稿,请自重,尊重大家的劳动成果和知识产权,抄袭必究。

    近期热文推荐:

    1.1,000+ 道 Java面试题及答案整理(2021最新版)

    2.终于靠开源项目弄到 IntelliJ IDEA 激活码了,真香!

    3.阿里 Mock 工具正式开源,干掉市面上所有 Mock 工具!

    4.Spring Cloud 2020.0.0 正式发布,全新颠覆性版本!

    5.《Java开发手册(嵩山版)》最新发布,速速下载!

    觉得不错,别忘了随手点赞+转发哦!

  • 相关阅读:
    Gallery平滑移动
    HDU 4308 BFS Saving Princess claire_
    css 浏览器兼容性问题解决
    CCPlace,CCFlip*,CCToggleVisibility,CCMoveTo*,CCJumpTo*,CCScale*,CCRotate*,CCSkew*,fade,CCCardinalSp*
    存储过程和输出分辨率表菜单JSON格式字符串
    Vertica变化Local时间到GMT时间
    【codeforces】Codeforces Round #277 (Div. 2) 解读
    Android 百度地图 SDK v3.0.0 (四) 离线地图功能介绍
    计算质数-埃里克森筛法(间隔黄金武器)
    IP地址分类
  • 原文地址:https://www.cnblogs.com/javastack/p/15071101.html
Copyright © 2011-2022 走看看