背景介绍
Postman是google开发的一款功能强大的网页调试与发送网页HTTP请求,并能运行测试用例的的Chrome插件。其主要功能包括:
模拟各种HTTP requests
从常用的 GET、POST 到 RESTful 的 PUT 、 DELETE …等等。 甚至还可以发送文件、送出额外的 header。
Collection 功能(测试集合)
Collection 是 requests的集合,在做完一個测试的時候, 你可以把這次的 request 存到特定的 Collection 里面,如此一來,下次要做同样的测试时,就不需要重新输入。而且一个collection可以包含多条request,如果我们把一个request当成一个test case,那collection就可以看成是一个test suite。通过collection的归类,我们可以良好的分类测试软件所提供的API.而且 Collection 还可以 Import 或是 Share 出來,让团队里面的所有人共享你建立起來的 Collection。
人性化的Response整理
一般在用其他工具來测试的時候,response的内容通常都是纯文字的 raw, 但如果是 JSON ,就是塞成一整行的 JSON。这会造成阅读的障碍 ,而 Postman 可以针对response内容的格式自动美化。 JSON、 XML 或是 HTML 都會整理成我们可以阅读的格式
内置测试脚本语言
Postman支持编写测试脚本,可以快速的检查request的结果,并返回测试结果
设定变量与环境
Postman 可以自由 设定变量与Environment,一般我们在编辑request,校验response的时候,总会需要重复输入某些字符,比如url,postman允许我们设定变量来保存这些值。并且把变量保存在不同的环境中。比如,我們可能会有多种环境, development 、 staging 或 local, 而这几种环境中的 request URL 也各不相同,但我们可以在不同的环境中设定同样的变量,只是变量的值不一样,这样我们就不用修改我们的测试脚本,而测试不同的环境。
操作环境
postman适用于不同的操作系统,Postman Mac、Windows X32、Windows X64、Linux系统,还支持postman 浏览器扩展程序、postman chrome应用程序等。
Postman的基础功能
这里写图片描述
Postman sending requests
安装好之后,先打开Postman,可以看到界面分成左右两个部分,右边是后头要讲的collection,左边是现在要讲的request builder。在request builder中,可以通过Postman快速的随意组装出我们希望的request。一般来说,所有的HTTP Request都分成4个部分,URL, method, headers和body。而Postman针对这几部分都有针对性的工具。
img
URL
要组装一条Request, URL永远是你首先要填的内容,在Postman里面你曾输入过的URL是可以通过下拉自动补全的哦。如果你点击Params按钮,Postman会弹出一个键值编辑器,你可以在哪里输入URL的Parameter,Postman会帮你自动加入到URL当中,反之,如果你的URL当中已经有了参数,那Postman会在你打开键值编辑器的时候把参数自动载入。
这里写图片描述
Authorization
身份验证,主要用来填写用户名密码,以及一些验签字段,postman有一个helpers可以帮助我们简化一些重复和复杂的任务。当前的一套helpers可以帮助你解决一些authentication protocols的问题。
Headers
点击’Headers’按钮,Postman同样会弹出一个键值编辑器。在这里,你可以随意添加你想要的Header attribute,同样Postman为我们通过了很贴心的auto-complete功能,敲入一个字母,你可以从下拉菜单里选择你想要的标准atrribute。
这里写图片描述
Method
要选择Request的Method是很简单的,Postman支持所有的Method,而一旦你选择了Method,Postman的request body编辑器会根据的你选择,自动的发生改变。
这里写图片描述
Request Body
如果我们要创建的request是类似于POST,那我们就需要编辑Request Body,Postman根据body type的不同,提供了4中编辑方式:
•form-data:它将表单数据处理为一条消息,以标签为单元,用分隔符分开。既可以单独上传键值对,也可以直接上传文件(当上传字段是文件时,会有Content-Type来说明文件类型,但该文件不会作为历史保存,只能在每次需要发送请求的时候,重新添加文件。);post请求里较常用的一种。•x-www-form-urlencoded:对应信息头-application/x-www-from-urlencoded,会将表单内的数据转换为键值对。•raw:可以上传任意类型的文本,比如text、json、xml等,所有填写的text都会随着请求发送。•binary:对应信息头-Content-Type:application/octet-stream,只能上传二进制文件,且没有键值对,一次只能上传一个文件, 也不能保存历史,每次选择文件,提交。
img
Pre-requerst Script
可以让你在请求之前自定义请求数据,这个运行在请求之前,语法使用JavaScript语句。
Tests
tests标签功能比较强大,通常用来写测试,它是运行在请求之后。支持JavaScript语法。postman每次执行request的时候,会执行tests。测试结果会在tests
的tab上面显示一个通过的数量以及对错情况。
响应示例
请求的响应状态码,响应时间,以及响应大小。
这里写图片描述
响应体示例
响应的格式可以有多种。
img
GET 请求
点击url后面的Params,输入参数及value,可输入多个,会将参数绑定到url后面。
GET可以不填请求头。
响应体有三种:JSON,HTML,XML。正常情况下,自定义接口都是返回JSON格式的响应体。
POST请求
POST请求测试的时候主要分成四种参数提交方式:表单提交;JSON提交;XML提交;二进制提交。
表单提交方式有两种方式:multipart/form-data(既可以上传文件等二进制数据,也可以上传表单键值对,只是最后会转化为一条信息);x-www-form-urlencoded(只能上传键值对,并且键值对都是间隔分开的)。
管理用例 Collections
Collections集合:也就是将多个接口请求可以放在一起,并管理起来。一个工程一个Collection,这样方便查找及统一处理数据。
第一步, 创建Collections
点击上图中的带+号的图标,输入Name:”abc”,Description:”示例demo”,点击Create按钮即创建成功一个Collections.
第二步,在Collections里添加请求
在右侧准备好接口请求的所有数据,并验证后,点击save按钮。
导出和导入接口集
postman支持非常方便的导入和导出接口集,继续操作如下:
导出:
img
img
导入:
环境变量设置
环境变量:Global---全局;Enviroment --- 环境变量;Local --- 局部;Data ---- 数据
优先级从高到底:Data ---- > Local ---- > Enviroment ---- > Global
postman支持很方便的设置环境变量以及全局变量,并可以一键切换不同环境。
1:可以一键切换环境,选择No Environment则不使用环境变量,仅适用全局变量;
2:可以查看当前环境中的变量和全局变量(Globals)的值。
img
身份验证Authentication
Basic Auth
是基础的验证,会直接把用户名、密码的信息放在请求的 Header 中,输入用户名和密码,点击 Update Request 生成 authorization header。
Digest Auth
Digest Auth为摘要认证,消息摘要式身份认证是在基本身份认证上面扩展了安全性,服务器为每一个连接生成一个唯一的随机数,客户端用这个随机数对密码进行MD5加密,然后返回服务器,服务器也用这个随机数对密码进行加密,然后和客户端传送过来的加密数据进行比较,如果一致就返回结果。使用当前填写的值生成authorization header。所以在生成header之前要确保设置的正确性。如果当前的header已经存在,postman会移除之前的header。
OAuth 1.0
postman的OAuth helper支持OAuth 1.0,是基于身份验证的请求。OAuth不用获取access token, 你需要去API提供者获取的。OAuth 1.0可以在header或者查询参数中设置value。
OAuth 2.0
postman支持获得OAuth 2.0 token并添加到requests中。这种授权方式很常见,在各种第三方登录都是用OAuth 2.0授权。
版权归原作者 小姚爱吃辣 所有, 如有侵权,请联系我们删除。