这里写目录标题
一级目录用例管理
作用:规范法管理接口上的大量测试用例
实现步骤:
1.创建集合–项目(如IHRM,tpshop)
2.创建文件夹–模块(如:登录,员工管理)
3.创建请求–测试用例(如:登录成功)
操作演示:
1.创建集合
2.创建文件夹
3.创建请求
二级目录postman断言响应状态码
1.断言前置基础
断言概念:让代码代替人判断用例执行的结果是否符合预期的过程
断言结果:
· 结果一致:测试通过pass
· 结果不一致:测试不通过fail
UnitTest常用的断言方式
postman断言的特点
1.使用JavaScript语言编写,写在postman的【Tests】标签中
2.【tests】中的脚本在发送请求之后执行,它会把断言的结果(PASS/FAIL)最终在【Test Results】标签页中
3.postman提供常用断言的代码片段
· 断言响应状态码是否为200:默认情况下为200(status code is 200)
· 断言响应体JSON数据校验:提取关键字(Response body:JSON value check)
· 断言响应体是否包含指定字符串:如是否包含登录成功,用户名不存在,在返回数据里(Response body: Contains string)
· 断言响应体是否等于指定字符串:如是否等于登录成功,用户名不存在(Response body:ls equal to a string)
· 断言响应头是否包含指定的头信息(Response headers: Content-Type header check)
操作示例
1.1断言响应状态码
案例
1.请求IHRM项目的登录接口,请求数据({“mobile”:“13800000002”,“password”:“123456”})
2.登录接口地址URL: http://ihrm-test.itheima.net/api/sys/login
3.请设置断言自动判定服务器响应状态码为200
1.2断言JSON数据(重点)
案例:
1.请求IHRM项目的登录接口,请求数据({“mobile”:“13800000002”,“password”:“123456”})
2.登录接口地址URL: http://ihrm-test.itheima.net/api/sys/login
3.请设置断言自动判定服务器响应体数据中success=true,code=10000,message=操作成功!
排错说明:
(1)检查断言代码片段是否选错了
(2)检查断言代码是否设置错了,预期结果或者是判断实际结果的字段选择错误
(3)先点击发送,基于响应中的body数据做初步预判
(4)检查请求相关参数(请求方式、请求头、请求体)
1.3断言包含指定的字符串内容(知道)模糊查找
案例:
1.请求IHRM项目的登录接口,请求数据({“mobile”:“13800000002”,“password”:“123456”})
2.登录接口地址URL: http://ihrm-test.itheima.net/api/sys/login
3.请设置断言自动判定服务器响应体数据中包含【操作成功]
1.4断言等于指定的字符串内容(知道)精确查找
案例:
1.请求IHRM项目的登录接口,请求数据({“mobile”:“13800000002”,“password”:“123456”})
2.登录接口地址URL: http://ihrm-test.itheima.net/api/sys/login
3.请设置断言自动判定服务器响应体数据等于【操作成功]
1.5断言响应体标签(了解)
案例:
1.请求IHRM项目的登录接口,请求数据({“mobile”:“13800000002”,“password”:“123456”})
2.登录接口地址URL: http://ihrm-test.itheima.net/api/sys/login
3.请设置断言自动判定服务器响应头中包含Content-Type和Content-Length
三级目录环境变量与全局变量
1、概念
全局变量:全局变量是全局唯一的,不可重复定义的变量。作用范围是针对postman下面所有测试集均生效
环境变量:
· 只对选择了对应环境的测试集生效(如:选择了测试环境的测试集IHRM0720)
· 开发环境、测试环境、生产/线上环境 I
· 一套环境中变量不能重复、但是可以定义多个不重复的变量
说明:环境变量的优先级是要高于全局变量的
2.设置变量
全局变量
· 手动设置
复制前半部分URL地址
·****代码设置
pm.globals.set(“var_name”, value);
// 设置全局变量
发送请求前先选择对应的环境
环境变量
· 手动设置
·****代码设置
pm.environment.set(“var_name”, value);
发送请求前先选择对应的环境
// 设置环境变量
四级目录 获取变量
全局变量与环境变量
在请求参数中获取:**{{变量名}}**
URL
请求头
请求体
代码获取全局变量与环境变量的值
全局变量:var value = pm.globals.get(“var_name”);
环境变量:var value = pm.ervironment.get(“var_namne”);
// 获取环境变量的值mobile2和password2
var mobile = pm.environment.get(“mobile2”);
var password = pm.environment.get(“password2”); console.log(“测试环境中的mobile是:”+ mobile)
console.log(“测试环境中的password是:”+ password)
五级目录Postman关联(重点)
1.Postman基础介绍
· Postman关联:后一个接口的请求需要依赖前一个接口的响应数据,一般通过全局变量或者环境变量来进行参数在接口之间的传递
· 技术实现
实现步骤:
1、要获取某个请求的响应结果数据,可以通过在‘Tests’标签页中编写JavaScript脚本来实现
2、多个请求之间可以使用全局变量或环境变量来传递数据
3、获取某个全局变量或环境变量的值:{{var_name}}
案例
- 请求获取天气的接口,http://www.weather.com.cn/data/sk/101010100.html 2.获取返回结果中的城市名称 3.调用百度搜索接口:http://www.baidu.com/s?wd=北京,把获取到的城市名称作为请求参数![在这里插入图片描述](https://img-blog.csdnimg.cn/direct/6fcdc5f01c6a44db925816a040748828.png)![在这里插入图片描述](https://img-blog.csdnimg.cn/direct/df317729b2864d5fa69e24db0e2c1e48.png)![在这里插入图片描述](https://img-blog.csdnimg.cn/direct/d96cd12025124fbcb9bc9a7b5cde9403.png)**2.请求前置脚本****介绍**:请求前置脚本就是在“Pre-request Script”标签中所编写的脚本,是在请求发送之前要执行的代码片段。应用场景: 请求参数中包含一个随机数或者时间戳(时间参数) 请求之前需要对请求参数做进一步处理(如:对敏感参数进行加密)案例 需求:请求TPshop项目中获取图片验证码的接口,需要在URL中设置随机数 请求路径:http://localhost/index.php?m=Home&c=User&a=verify&r=0.6569606479434671 分析:在JS中如何生成随机数?var r = Math.random(); // 返回[0,1)之间的随机数
版权归原作者 幼儿园大班首富. 所有, 如有侵权,请联系我们删除。