1、Postman的用例管理
作用:规范管理接口上的大量测试用例
--创建collection集合---项目
--创建文件夹--模块
--创建请求--测试用例
2、PostMan的断言
断言:通过代码自动判断实际运行的结果是否与测试用例中的预期结果一致
断言的结果:
--结果一致:测试通过pass
--结果不一致:测试不通过fail
Postman的断言:
--使用JavaScript语言编写,写在Postman的【Tests】 tests标签中
--【Tests】中的脚本在发送请求之后执行,它会把断言的结果(pass/fail)最终输出在【test result】
Postman常用的断言:
--断言响应状态码是否是200(status code is 200)
--断言响应体Json数据校验
--断言响应体是否包含指定的字符串
--断言响应体是否等于指定的字符串
--断言响应头 是否包含指定的头部信息
2.1断言状态响应码:
示例:
pm.test("Status code is 200", function () { pm.response.to.have.status(200); }); 说明: pm.test是postman内置对象pm对外提供的一种名称test的方法,它的功能是使用pm.test来编写测试脚本时,即方法内部处理内容出现错误也不会影响后续自动化脚本的运行
2.2 断言Json数据:
判断响应体中的key-value值 success 和code是否为对应的值
断言排错说明:
1)检查断言代码片段是否选错了
2)检查断言代码是否设置错了,预期结果或者预判断实际结果的字段选择错误
3)先点击发送,基于响应的body数据做初步预判断
4)检查请求相关参数(请求方式、请求头、请求体)
2.3 断言包含指定的字符串内容
使用snippets中的contains string
---如何完整的匹配一个Json返回数据呢??
pm.test("服务器响应数据中的 响应体 整体匹配", function () { pm.response.to.have.body(‘{"success":true,"code":10000,"message":"操作成功!","data":"dc4f7bf9-3bf9-4606-8c30-a9e4ecee57b2"}’); }); 2.5 断言响应头标签
3、环境变量和全局变量
3.1、概念
全局变量:作用范围是针对postman下面所有的测试集生效
环境变量:
---只对选中的对应环境的测试集生效(如:选择了 开发环境、测试环境、生产环境)
---开发环境、测试环境、生产环境
--一套环境中的变量不能重复,可以定义多个不重复的变量
3.2 设置全局变量
1)手动界面设置:
查看全局变量是否在全局变量中生成:
2)代码设置:
代码设置可以在pre-requests 设置,也可以在Tests中设置;
二者不同为pre-request为前置脚本,执行request之前运行,如果本次request使用了这个全局变量,可以在前置脚本中设置;
Tests为后置脚本,只有在request执行后才会执行,如果本次不适用这个全局变量可以在Test中设置
pm.globals.set("base_url", "http://ihrm-test.itheima.net");
3.3 设置环境变量:
1)手动设置环境变量:
2)代码设置环境变量
---和代码设置全局变量的步骤是一样的,但是要提前选中 active一个环境
查看对应的环境中是否生成了 环境变量en_jack
4、Postman中的依赖(关联)(重点内容)
4.1
Postman关联: 后一个接口的请求需要依赖前一个接口的响应数据,一般通过全局变量或者环境变量来进行参数在接口之间的传递
技术实现: