如何使用Newman 命令行的方式去运行API脚本?

171 阅读3分钟

携手创作,共同成长!这是我参与「掘金日新计划 · 8 月更文挑战」的第8天,点击查看活动详情

大家好,我是阿萨。日常的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?

  1.  首先使用Postman的导出功能,把Collection 导出成json 结尾的文件。

    Image

    Image

  2. 导出后,直接用命令行运行。json文件路径可以是一个URL 下的,也可以是一个物理路径的绝对地址或者相对地址。

newman run mycollection.json
  1. Newman 运行结果也可以导出报告。使用如下命令:

newman run sarah_demo.json --reporters cli,json --reporter-json-export outputfile.json
  1. Newman 运行带data 文件的报告,使用如下命令:
newman  run sarah_demo.json -d data.json

Newman 运行界面:

Image

\

四,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 用例。是不是很强大。 你学会了吗?