软件系统日益复杂的今天,为了能有效控制住系统的复杂性,分工是势在必行的选择,这也契合经济学之父亚当斯密在其《国富论》中阐述的"社会分工可以大大提高生产效率"。
1. 概述软件开发中,分工不仅仅体现在模块的划分,前后端的分离,也体现在对于第三方服务的依赖上,毕竟伴随用户要求越来越高,我们不可能在一个系统中将所有的功能都从零开始实现一遍,这完全没有必要且不现实。
受限于工期或其它因素,很多时候尤其是开发测试阶段我们对外部的强依赖会让我们的工作举步维艰甚至寸步难行。不过好在业界对于这类问题很早就注意到了,本文将要介绍的正是POSTMAN在Mock上的使用。
2. 操作概述因为POSTMAN提供了非常多创建Mock Server的方式,这里笔者就不一一介绍了,官方介绍得更加详细,甚至配了相应的GIF动态图(以及对应的拆解步骤说明),笔者将尝试从一个初学者的角度来陈述整个流程。
首先让我们一种偏大白话的方式来解释POSTMAN中创建Mock逻辑(POSTMAN - Mocking with examples):
既然我们需要对第三方依赖进行Mock,那么必然存在一个调用第三方服务的HTTP请求。这就对应了第一步的"Sending a request (R1)"。 既然都使用了POSTMAN,我们必然是希望创建的Request能够被重复性执行。这就对应了第二步的"Saving the request (R1) to a collection (C1)"。 完成了对Request的持久化,接下来就进入Mock的创建环节(其实所谓的Mock说直白一点就是对于某个请求,我们将响应准备好的对应返回值内容,进而断开对某个尚未完成或者难以访问到的服务的强依赖)。在POSTMAN中这一步被刻意分拆为逻辑更为清晰的两个阶段: 作为包裹Request和对应的模拟Response容器的Example概念;这就对应了第三步的"Saving the request R1’s response as an example (P1)"。 为第二步创建的Collection创建对应的Mock Server。承载针对其中的Request创建的Examples。这就对应了第四步的"Creating a mock (M1) for the collection (C1)"。 之后我们就可以借助POSTMAN内置的Environment特性实现通过对Mock Server和真实服务的访问切换。这就对应了第五步的"Sending a request using the mock server (M1)"。 3. 实操接下来让我们从零开始逐一践行上述操作步骤。
a. 创建一个调用第三方服务的HTTP请求。
b. 将创建的Request保存到Collection中。
原创文章 148获赞 35访问量 15万+
关注
私信
展开阅读全文
作者:夫礼者