1. 什么是newman
newman时一款基于Node.js开发的可以运行postman的工具,使用Newman可以直接从命令行运行postman集合。
2. 安装
要求Node.js >= v10
npm install -g newman
3. 基本使用
3.1 从postman导出测试集
右键点击想导出的集合,点击export,可以将测试集导出json。导出的文件版本,按系统推荐的,使用2.1版本就可以。
image
3.2 导出环境变量
如果你的测试集依赖自定义的一些环境变量,就需要将其导出。方法是:
点击右上角“环境管理”按钮,在弹出的对话框中下载你需要的环境文件。依然是一个json文件。
image
3.2 命令行执行
newman run
Demo.postman_collection.json //指定测试集合
--environment online.postman_environment.json //指定环境
-r csv //指定reporter
--reporter-csv-export ./result/Demo.result.csv //指定输出文件名及目录
说明:
- 如果不依赖环境变量,可以不使用--environment参数
- 可以不指定reporter,这时newman会默认使用cli reporter将结果输出至屏幕,类似下面这样:
newman
Test
→ request 1
GET http://business.qqpy.sogou.com [200 OK, 310B, 235ms]
1. http code is 200
✓ this is right
2. response is ok
→ request 2
GET https://postman-echo.com/get?name={{name}} [200 OK, 629B, 2.3s]
✓ response is ok
... ...
- 如果不指定输出的文件名及目录newman会建立newman目录,并生成以时间命名的文件名。类似:
newman/newman-run-report-2020-04-24-04-01-16-757-0.json
- 更多的命令行参数详见
https://www.npmjs.com/package/newman#command-line-options
4. 关于reporter
更多的report参见
https://www.npmjs.com/package/newman#reporters
https://www.npmjs.com/package/newman#community-maintained-reporters
个人感觉如果要对newman report的输出进行解析,选用自带的junit好一点。json内部结构太复杂,不好解析。或者第三方report中的csv, json-summary也还可以。
如果这些reporter输出的字段都未必能满足你需求,这时你就只能自己DIY了。对于DIY的方式,文档说的非常简要。
https://www.npmjs.com/package/newman#creating-your-own-reporter
https://www.npmjs.com/package/newman#api-reference
网友评论