postman是什么?
是一个接口测试工具,主要提供了强大的接口测试功能,针对的是HTTP/HTTPS协议
用在哪些地方?
需要调试/测试的接口是http/https的接口的时候都可以使用
合集(collections)
添加合集:
1.点击到 collections--->点击 "+" 号--->输入合集名称
2.点击到 collections--->点击 new--->选择 collection---->输入合集名字
添加请求:
1.找到合集点击 "..."--->选择 "Add Request"--->输入请求的名字和地址
2.点击请求旁边的 "+"---->点击"Save"--->选择合集保存
发起请求
请求:
请求头在 headers 里面
请求参数在 Params 或者 Body 里面
响应:
响应头在 Headers 里面
提供了状态码,响应时间,响应数据大小的展示
响应的内容在Body里面
缓存在Cookies里面
get请求
1.无参数的get请求
1.1.将请求地址复制到url地址栏
1.2.请求方式选择 Get
1.3.点击Send发送请求
2.带参数的get请求
2.1.将请求地址复制到url地址栏
2.2.请求方式选择 Get
2.3.在Params里面填写请求的参数
2.4.多个参数写在Params里面,地址栏参数部分使用 ? 分割,多个参数之间使用 & 连接
特点:
1.get请求没有请求体,请求的参数会自动拼接到URL地址上面
2.在get请求中会把参数进行urlencode编码
%:%25
空格:%20
Post请求
1.x-www-form-urlencodede
常见的传参格式
# 步骤
1.复制URL地址到地址栏
2.修改请求方式为 Post
3.选择 Body--->x-www-form-urlencodeed
4.填写参数和对应的值(Key-Value)
Json格式
步骤
1.填写测试的URL地址 "http://www.httpbin.org/post"
2.修改请求方式为Post
3.选择 Body---->raw--->JSON格式
4.在输入框内填写JSON格式的传参内容
JSON格式
JSON数组:列表
JSON对象:字典
JSON嵌套:列表和字典之间的嵌套
form-data格式
步骤
1.填写测试的URL地址 "http://www.httpbin.org/post"
2.修改请求方式为Post
3.选择Body--->form-data
4.填写键值对参数,点击 Send 发起请求
和其他的传参方式的区别在于:
headers里面的Content-Type多了一个boundary
在实际的工作中,boundary由开发来提供
binary格式
上传文件的时候使用该格式
步骤
1.填写测试的URL地址 "http://www.httpbin.org/post"
2.修改请求方式为Post
3.点击Body-binary--->select file 选择上传的文件
4.点击Send发送请求
上传的是图片文件时会进行base64编码,该编码方式可逆
环境变量
测试环境(Test)
预发布环境(UAT)
除了服务地址或者端口不一样,其他的地址全部一致
生产环境:一般只做功能的验收,所有都是正向流程,不影响用户的流程
环境变量添加
1.点击到Environments里面---->点击"+"号
2.输入环境变量名
3.添加环境变量:
Variable:变量名称
Initial:初始变量值
Current:当前变量值
使用环境变量
1.在右上角选择环境变量
2.在需要使用的位置加上 {{变量名称}}
断言(Tests)
1.状态码
点击 Status code:code is 200
// 断言状态码为200
pm.test("断言状态是200", function () {
pm.response.to.have.status(200);
});
2.开发自检字段
点击 Response Body:JSON value check
// 断言开发自检字段
pm.test("断言开发的自检字段status", function () {
var jsonData = pm.response.json();
pm.expect(jsonData.status).to.eql(10020);
});
3.具体数据值
点击 Response Body:JSON value check
// 断言具体的数据值
pm.test("断言查询结果必须是小米发布会", function () {
var jsonData = pm.response.json();
pm.expect(jsonData.data[0].name).to.eql("小米发布会");
});
to.eql:等于
to.include:包含关系
to.contain:包含关系
参数化
1.先准备测试数据 注意必须是CSV的格式
准备好之后使用notepad++打开修改编码方式为 utf-8
2.在参数里面加上 {{表头}}
3.在断言里面使用参数化文件内的数据:"data.表头"
4.点击合集的 '...' 选择 Run collections
5.选中需要参数化执行的接口,点击"select file"上传参数化文件
6.点击执行
导入导出
导出
点击合集旁边的 '...'--->选择Export--->选择存储路径
导入
点击Import--->选择"File",点击"Upload Files"--->选择相应的文件上传