大家好,我是阿萨。日常的API 测试除了界面之外,有时候需要使用命令行去运行API 脚本。这样方便在不同环境 后台去运行API脚本。
今天就来学习下Newman
一,什么是Newman?
Newman是Postman的命令行运行器。它能够直接从命令行运行和测试Postman Collection。它有较强的可扩展性,可以将其与持续集成服务器集成并运行。
Newman 有Postman相同的特性,并以Postman中Collection运行程序中执行Collection方式运行。
二, 如何安装Newman?
Newman是基于Node.js构建的。要运行Newman,请确保安装了Node.js。按照以下步骤下载用于CI平台的Node.js。确保使用Node.js v4或更高版本。
在系统上全局安装npm中的Newman,这样就可以在任何地方运行它:
npm install -g newman
三,如何用Newman 运行 Collection?
- 首先使用Postman的导出功能,把Collection 导出成json 结尾的文件。
- 导出后,直接用命令行运行。json文件路径可以是一个URL 下的,也可以是一个物理路径的绝对地址或者相对地址。
newman run mycollection.json
3. Newman 运行结果也可以导出报告。使用如下命令:
newman run sarah_demo.json --reporters cli,json --reporter-json-export outputfile.json
4. Newman 运行带data 文件的报告,使用如下命令:
newman run sarah_demo.json -d data.json
Newman 运行界面:
四,Newman 提供的参数列表有哪些?
设置newman 命令行 的参数可以是如下列表:
-h,--help
输出使用信息
-v,--version
输出版本号
--folder [folderName]
指定要从Collection运行的单个文件夹。
-e,--environment [file|URL]
指定Postman环境为JSON[文件]。
-d,--iteration-data [file]
指定要使用的数据文件,可以是JSON也可以是CSV。
-g,--globals [file]
指定Postman globals文件为JSON [file]。
-n,--iteration-count [number]
定义要运行的迭代次数。
--working-dir [path]
设置读取相对路径文件时使用的工作目录路径。默认为当前目录。
--no-insecure-file-read
防止读取位于工作目录之外的文件。
--export-environment [path]
文件的路径,在完成运行之前,Newman将在此输出最终的环境变量文件。
--export-globals [path]
文件的路径,在完成运行之前,Newman将在此输出最终的全局变量文件。
--export-collection [path]
文件的路径,在完成运行之前,Newman将在此输出最终的收集文件。
--delay-request [number]
指定请求之间的延迟时间(毫秒)[number]。
--timeout [number]
指定整个收集运行完成执行的时间(以毫秒为单位)。
--timeout-request [number]
指定请求的超时时间(以毫秒为单位)。
--timeout-script [number]
指定脚本完成执行的等待时间(毫秒)。
五,总结
Newman 弥补了Postman 是个GUI 工具,无法使用命令行的缺陷。同时也可以在CI部署相关命令,方便运行API 用例。是不是很强大。
你学会了吗?
Postman 往期内容: