Postman 简介
在你开发 Restful API 或者测试第三方 API 时,我想 Postman 会是一个很好的工具。它给用户提供非常友好的交互页面,使得你不必在编写繁琐的代码就能轻松完成 API 测试。
Postman 官网是这样介绍这款 Postman 的:Postman 是一个 API 开发的协作平台,旨在简化构建 API 的每个步骤并简化协作,这样您就可以更快地创建更好的 API。
简单来说,Postman 就是一个 API 客户端,在 Postman 中你可以直接快速、轻松地分布任何请求。
1. Postman 的发展史
Postman 的两个联合创始人 Abhinav Asthana 和 Ankit Sobti 最开始是在 Yahoo 构建一个应用程序的前端架构,那时他们必须使用 API。他们意识到缺少支持 API 开发的工具,于是坐下来编写代码解决这个问题,并将其发布在谷歌的网上商店——这就是 Postman 最早的由来。
2012 年,在谷歌的网络商店上,Postman 已经有了将近 2000 次下载。于是他们开始更加仔细地研究这个领域,发现人们迫切的需要一个 API 工作流,从概念化到文档的发布再到 API 的传播。
于是, Postman 就从一个业余项目发展成为了一个许多世界顶级组织使用的 API 平台。截止到目前现在全世界有已经有超过 600 万的开发者在使用 Postman。
2. Postman 的版本历史
Postman 的主要发行版本有 Postman v7 和 v6/v5。v7 又有很多细碎的版本,从 v7.0.6 到 v7.27.1 不等。Postman v7 和之前版本最大的不同在于:Postman v7 版本提供了基于角色的访问控制,在集合、团队和工作空间级别提供了更强健的权限管理功能。
Tips:本教程将使用 Postman v 7.27.1 进行教学。
3. Postman 特性
工作空间:支持软件开发期间的团队协作
用 Postman 的免费账号就可以创建个人工作空间,你可以邀请团队其他成员加入该工作空间,在该工作空间协同合作。
集合:按目的组织的一系列 HTTP 请求
集合是最常用的API格式。使用集合可以将请求、参数、描述、测试和脚本都组织在一个文件夹中。可以通过共享集合在 API 上进行协作,并在集合上构建测试套件、文档、模拟服务器和监视器。
环境:私人信息的存储和保护
为了在不同的服务器上运行 API,可以在 Postman 中使用环境变量。这些变量几乎可以在任何地方使用。使用双括号访问变量。
测试脚本:使用 JavaScript 为每个请求编写和运行测试。
一个测试 API 是否返回 JSON 字符串“127.0.0.1”的测试脚本:
pm.test("IP Address", function(){
pm.expect(pm.response.json()).to.equal("127.0.0.1");
});
变量——允许引用本地存储的数据而不泄露敏感信息
4. 与其他软件对比
除了 Postman 之外,市面上还有一些其他受欢迎的 API 工具,下面就来比较下这些工具和 Postman 的优缺点。
4.1 Paw
Paw 是一款功能齐全、设计精美的 Mac 应用程序。良好的界面是 Paw 胜过 Postman 之处。简而言之,Paw 称得上是 MAC 系统上最强的 API 工具,不过 Paw 是收费的。
4.2 Swagger UI
Swagger UI 相较于 Postman 最大的优势在于不依赖 HTML、JavaScript 和 CSS 就可以在 web 页面上动态生成漂亮的 API 文档。
但它不像 Postman 这样的接口测试客户端,在界面上点选以及输入就可以发送请求。Swagger UI 需要在后台代码中做一些配置甚至写一些代码才能实现,相对来说,Swagger UI 的学习和接入成本较高。
总而言之,Postman 以简单易用而知名,并在 1725 个公司栈和 2166 个开发者栈中被提及,得到了广大开发者的认可。
5. 为什么要用 Postman
首先在项目初期,测试人员提前介入,进行接口测试,模拟客户端与服务端的交互。有问题提前抛出来。保证接口调用是没问题的。其次,接口测试完成之后再进行系统测试,会轻松很多。明白了各个接口在做什么,各个参数的模拟实际上就是业务场景的模拟。系统测试出现一些问题可以更快速的定位是客户端还是服务端出问题。
另外,接口是获取和操作资源的方式,而大部分系统和产品中,资源一般都是产品的核心,比如微信核心资源就是通讯录关系链和聊天记录等,因此资源是必测的。
而接口中大部分的内容是数据,通过数据的对比我们能推测到系统和产品的逻辑,测接口就是测逻辑。最后接口中的返回相对单纯,不像 web 页面,HTML 代码中有太多 UI 的东西,UI 最不稳定,变化太快,接口相对稳定一点点,但是里面的干扰信息更少,断言相对容易很多。
6. 学习基础
学习使用 Postman 最好是有一定的后端开发或测试基础,或者是正在学习如何编写 Restful API 接口程序。 当然,如果你没有任何基础知识也不必担心,本教程会尽量使用通俗易懂的语言来讲解知识点。
这篇文章主要介绍了 Postman教程的一些基本知识,对于要验证自己的 API 或第三方 API 的同学,Postman 是一个很好的快速入门上手的工具。