掌握 Postman Newman:快速启动 API 测试自动化

Postman 中的 Newman 是什么?

Newman 是一个 CLI(命令行界面)工具,用于运行 Postman 中的集合(Collection)和环境(Environment)来进行自动化测试。它允许直接从命令行运行 Postman 集合。根据 Postman 的官方网站,他们将 Newman 描述为 Postman 的命令行 Collection Runner。

Postman Newman 的作用

通过 Postman Newman ,开发人员可以在代码更改后快速获得有关 API 性能的反馈。在 Newman 的帮助下,它与 CI 集成,此后如果推送任何更改,CI 将与 Newman 一起运行 Postman 集合。Newman 可以用来测试 API 的功能、性能、可靠性和安全性,同时可以将测试结果输出成多种格式的报告(如 HTML、JSON、JUnit 等),以方便开发人员进行问题定位和分析。

如何使用 Postman Newman

第一步:安装 Node.js

首先,Newman 建立在 Node.js 之上。要运行 Newman,请确保安装了 Node.js。如果没有配置请先下载安装 Node.js (注意:某些 CI 系统具有预安装 Node 的配置), 要确保使用的是 Node.js v4 或更高版本。

第二步:从 npm 全局安装 Newman

复制代码
$ npm install -g newman

第三步:导出集合或环境变量为 json 格式

将 Collection 导出为 json 格式文件或在环境变量设置中下载需要的环境变量 (Global 或 Environment) ,导出 json 格式的文件。

第四步:Newman 运行

Newman 常用参数:

  • -e:--environment file\|URL:指定postman环境变量文件(Json文件);
  • -d:--data file:指定postman参数化文件(支持csv、json格式等);
复制代码
复制代码
$ newman run [collection.json] -e [environment.json] -r [reporter] --reporter-[option] [value]

其中,collection.json 是集合文件的路径,environment.json 是环境文件的路径,reporter 是报告格式,--reporter-[option] [value] 是报告选项和值。

第五步:导出报告

Newman 提供了三种格式的报告,包括cli、json及html格式,需要通过-r参数指定:

  • Cli 格式:基础格式,默认cmd中显示的报告格式;
  • json 格式:使用-r json指定导出相应的文件,需要 ----reporter-json-export指定导出文件的存放路径,文件内容与postman runner中的export result内容相似,不建议使用。
  • Html 格式:使用-r html指定导出相应的文件,需要----reporter-html-export指定导出文件的存放路径。使用前需要安装(npm --g install newman-reporter-html),建议使用。
复制代码
复制代码
$ newman run examples/sample-collection.json -e examples/sample-environment.json -r htmlextra --reporter-htmlextra-export report.html

本例子中运行 sample-collection.json 集合中的测试用例,并生成一个名为 report.html 的 HTML 报告。

知识扩展:

了解更多 Postman 相关使用技巧:

相关推荐
骄马之死3 小时前
SpringMVC + SpringBoot 核心知识点总结
java·spring boot·后端
GoGeekBaird4 小时前
Anthropic技能"(Skills)的经验分享
后端
王码码20354 小时前
多台服务器怎么统一看状态?Beszel 轻量监控,搭起来不费事
运维·服务器·后端·安全·阿里云·接口·web
郑洁文4 小时前
基于Spring Boot的流浪动物救助网站
java·spring boot·后端·毕设·流浪动物救助
螺丝钉code5 小时前
JAVA项目 Claude code CLAUDE.md 到底应该怎么写
java·人工智能·claude code
指令集梦境6 小时前
Cursor + Spring Boot实战:从零写一个RESTful API
spring boot·后端·restful
winfredzhang6 小时前
Node.js + SQLite 实战:本地 Markdown 阅读书架源码深度解析
sqlite·node.js·safari·分页·多媒体·md文档
摇滚侠6 小时前
Maven 入门+高深 单一架构案例 54-59
java·架构·maven·intellij-idea
VidDown6 小时前
Webhook 调试器:让第三方回调“原形毕露”
java·开发语言·javascript·编辑器·postman
码云之上6 小时前
聊聊如何设计一个高效、稳定的 Node.js 接入层
前端·后端·node.js