网站首页 > java教程 正文
现在都是前后端分离架构,一般是后端人员先设计好接口定义,然后前端人员就可以根据接口定义进行开发了,前期前后端独立开发,互相不影响。
那么问题来了,如果到了中后期,前端开发完了,后端还没开发完,那前端要傻傻地等后端开发完再联调测试吗?到那时,就太晚了,前端的质量就没法保证,一般后端要弄个 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-exam...
2、发送 Mock Server Url 请求;
Mock Url 如下:
https://41783d96-2f22-4ed6-ac...
这是个公网链接,只有有网,前端就能联调测试。
二、发起 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技术栈" 原创,原创实属不易,转载、引用本文内容请注明出处,禁止抄袭、洗稿,请自重,尊重大家的劳动成果和知识产权,抄袭必究。
猜你喜欢
- 2024-10-10 架构师必须搞懂DNS,一篇文章 就够了
- 2024-10-10 Spring Boot 最核心的 25 个注解,都是干货!
- 2024-10-10 别再面向 for 循环编程了,JDK 自带的观察者模式就很香
- 2024-10-10 Spring Cloud 如何动态刷新 Git 仓库配置?
- 2024-10-10 公司来了个新同事不会用 Lombok,还说我代码有问题
- 2024-10-10 Spring Boot 怎么打一个可执行 Jar 包?
- 2024-10-10 你必须了解Spring的生态(spring 生态)
- 2024-10-10 Java技术栈ppt分享:大数据+架构篇+算法篇(阿里巴巴内部资料)
- 2024-10-10 腾讯牛逼!终于开源了自家的 JDK——Kona
- 2024-10-10 Spring Boot Redis 实现分布式锁,真香
你 发表评论:
欢迎- 最近发表
-
- Java常量定义防暴指南:从"杀马特"到"高富帅"的华丽转身
- Java接口设计原则与实践:优雅编程的艺术
- java 包管理、访问修饰符、static/final关键字
- Java工程师的代码规范与最佳实践:优雅代码的艺术
- 编写一个java程序(编写一个Java程序计算并输出1到n的阶乘)
- Mycat的搭建以及配置与启动(mycat部署)
- Weblogic 安装 -“不是有效的 JDK Java 主目录”解决办法
- SpringBoot打包部署解析:jar包的生成和结构
- 《Servlet》第05节:创建第一个Servlet程序(HelloSevlet)
- 你认为最简单的单例模式,东西还挺多
- 标签列表
-
- java反编译工具 (77)
- java反射 (57)
- java接口 (61)
- java随机数 (63)
- java7下载 (59)
- java数据结构 (61)
- java 三目运算符 (65)
- java对象转map (63)
- Java继承 (69)
- java字符串替换 (60)
- 快速排序java (59)
- java并发编程 (58)
- java api文档 (60)
- centos安装java (57)
- java调用webservice接口 (61)
- java深拷贝 (61)
- 工厂模式java (59)
- java代理模式 (59)
- java.lang (57)
- java连接mysql数据库 (67)
- java重载 (68)
- java 循环语句 (66)
- java反序列化 (58)
- java时间函数 (60)
- java是值传递还是引用传递 (62)
本文暂时没有评论,来添加一个吧(●'◡'●)