目录
目录
Postman+newman
新增测试用例集,新增功能模块,新增请求(1,2中的内容,包括请求方法,请求url,请求行,请求头,请求体),测试用例集的导出,测试用例集的导入
1、断言状态码(重要)
2、断言包含某个字符串(contains string)
3、断言等于某个字符串(equal string)
4、断言Json数据(重要)
-
- /* 举例:response.json();
- {
- "success": true,
- "code": 10000,
- "message": "操作成功!",
- "data": "95c78d75-721c-40fb-b2d5-742fea42cbd5"
- }
- */
5、断言响应头 header
6、Postman断言原理
- #全局变量设置
- pm.globals.set("glb_age", 100)
- #全局变量获取
- var ret = pm.globals.get("glb_age") // ret 的值为 100
- #环境变量设置
- pm.environment.set("env_age", 99)
- #环境变量获取
- var ret = pm.environment.get("env_age") // ret 的值为 99
- 请求参数获取(postman界面获取)
- {{env_age}}
1)获得时间戳,传递给变量
2)将变量设为全局变量
3)查看全局变量是否设置成功(点击send ,查看右上角眼睛)
4)在请求参数(界面)中使用全局变量
5)在 postman的 控制台,查看 发送的 http请求 view->show Postman Console
应用于多个http请求之间,有数据关联和依赖关系时,将前一个接口获取的数据传递给下一个接口。
A,B接口依赖数据(登录接口与添加员工接口)登录接口->获得令牌->添加员工信息
1)B发送http请求,获得数据
2)将数据设为全局变量
3)A接口获得全局变量的值,进行http请求
1)批量执行测试文件(确认无误)
2)批量导出测试文件(得到 xxxx.json文件)
3)利用Newman代码在终端中执行命令,生成测试报告
- ```shell
- # 现在 终端中,测试一下。
- newman run xxxx.json
-
- # 完整的命令
- newman run xxxx.json -e 环境变量文件 -d 外部数据文件 -r html
- --reporter-html-export 测试报告名.html
-
- # 示例:
- newman run 批量执行测试用例.postman_collection.json -r html
- --reporter-html-export 我的第一个测试报告.html
-
- # 如果添加 -r html 就报错!说明: newman-reporter-html 安装失败!
- ```
注意:文件读取时会逐行读取!!!
应用:当http请求,使用的数据有较高相似度,相同的请求时,考虑使用参数化
1)创建 xxx.csv 文件。
2)将数据写入到 csv文件中(保存时右下角编码类型设置为utf-8)。
3)在 Postman 中,选中使用数据文件的 用例集,导入数据文件。
1)创建 xxx.json 数据文件
2)在 数据文件中,按json 语法写入json数据。postman要求,json格式的数据文件,数据内容的最外层,必须是 [ ] 。内部所有的数据用 {} 存储。( 建议:使用 json.cn 在线网站编写。)
3)在 Postman 中,选中使用数据文件的 用例集,导入数据文件。
- 第一种:**请求参数**(请求行、请求头、请求体)中
**使用 {{}}** 包裹 csv 文件 字段名 或 json 文件中的 key
- 如: {{username}} 或 {{password}}
- 第二种:**代码**(断言、请求前置脚本)中
- 需要借助 postman 提供的 **关键字data** 点 csv 文件的字段名 或 json文件的 key
- 如: data.username 或 data.password
1)创建用例集->创建查找手机号的http请求->点击run collection
2)导入.csv文件或者.json文件
3)在断言界面3.2格式,在请求参数界面使用3.1格式,点击run 参数化用例集,完成用手机号找运营商
9、Postman参数化-生成测试报告
1. 批量执行测试用例(借助数据文件)(8中内容)
2. 导出 测试用例集 (建议与 数据文件 放在一起)
3. 执行生成测试报告的命令(cmd)
-
- newman run 用例集名称.json -d 数据文件名.csv/.json -r html --reporter-html-export
- 报告名称.html