Postman Newman API 自动化测试快速入门

什么是 Newman?

Newman 是一款专为 Postman 打造的命令行工具,旨在通过自动运行 Postman 集合和环境,实现 API 测试的自动化。它使得开发者无需打开 Postman 图形界面,即可直接在命令行中执行测试用例。

Newman 的优势

使用 Newman 进行 API 测试,可以带来诸多好处:

  1. 快速反馈:每当代码发生变更,开发者都可以借助 Newman 迅速获悉 API 性能的最新状况。
  2. 持续集成:Newman 可以与持续集成(CI)系统无缝对接。一旦有任何代码变更被推送,CI 系统便会自动触发 Newman 运行相应的 Postman 集合。
  3. 全面测试:Newman 能够全方位测试 API 的功能、性能、可靠性和安全性。
  4. 多样化报告:测试结果可以通过 Newman 导出为 HTML、JSON、JUnit 等多种格式的报告,方便开发者定位问题和分析数据。

如何上手 Newman?

准备工作

1、确保已安装 Node.js(版本不低于 v4)。如果尚未安装,请先下载并安装 Node.js

2、打开命令行,运行以下命令,从 npm 全局安装 Newman:

复制代码
   npm install -g newman

导出 Postman 数据

  1. 在 Postman 中,将所需的 Collection 导出为 JSON 格式的文件。
  2. 如有需要,也可以在环境变量设置中下载相应的环境变量文件(Global 或 Environment)。

运行测试

使用以下命令运行 Newman 测试:

复制代码
newman run [collection.json] -e [environment.json] -r [reporter] --reporter-[option] [value]

其中:

  • collection.json 是 Collection 文件的路径。
  • environment.json 是环境变量文件的路径(可选)。
  • reporter 是报告格式,如 cli、json、html 等。
  • --reporter-[option] [value] 是报告选项和值。

例如,要运行 sample-collection.json 集合并生成名为 report.html 的 HTML 报告,可以使用以下命令:

复制代码
newman run examples/sample-collection.json -e examples/sample-environment.json -r html --reporter-html-export report.html

分析报告

Newman 支持以下三种报告格式:

  1. CLI 格式:默认格式,在命令行中直接显示测试结果。
  2. JSON 格式 :使用 -r json 参数指定,并通过 --reporter-json-export 参数指定导出文件的路径。不推荐使用。
  3. HTML 格式 :使用 -r html 参数指定,并通过 --reporter-html-export 参数指定导出文件的路径。使用前需要运行 npm install -g newman-reporter-html 安装相应的报告器。推荐使用。

其他选择

对于国内用户而言,使用 npm 安装 Newman 可能会遇到网速慢、需要切换镜像源等问题。如果你希望避免这些麻烦,不妨试试国产 API 管理工具 Apifox

与 Postman 不同,Apifox 将 API 文档、调试、Mock 和自动化测试等功能集于一身,让你无需在多个工具之间频繁切换,从而避免数据不一致的问题。它提供了一站式的 API 开发体验,值得一试。

相关推荐
bigdata-rookie3 分钟前
Starrocks 数据模型
java·前端·javascript
白帽子凯哥哥5 分钟前
网络安全Web基础完全指南:从小白到入门安全测试
前端·sql·web安全·信息安全·渗透测试·漏洞
RFCEO11 分钟前
前端编程 课程十四、:CSS核心基础2:选择器优先级 + 伪类选择器(解决冲突+交互效果)
前端·css·交互·css选择器优先级判断规则详解·css important使用·css链接伪类lvha顺序·实现悬浮交互效果
爱敲代码的憨仔11 分钟前
Spring-AOP
java·后端·spring
web打印社区13 分钟前
前端实现浏览器预览打印:从原生方案到专业工具
前端·javascript·vue.js·electron
短剑重铸之日14 分钟前
《设计模式》第四篇:观察者模式
java·后端·观察者模式·设计模式
Hx_Ma1621 分钟前
SpringBoot注册格式化器
java·spring boot·后端
乔江seven25 分钟前
【python轻量级Web框架 Flask 】1 Flask 初识
开发语言·后端·python·flask
徐同保26 分钟前
vue.config.ts配置代理解决跨域,配置开发环境开启source-map
前端·javascript·vue.js
知识即是力量ol34 分钟前
一次完整的 Spring Security JWT 鉴权链路解析
java·后端·spring·鉴权·springsecurity