当前位置: 首页 > news >正文

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:

  1. npm install -g newman
    

导出 Postman 数据

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

图片.png

运行测试

使用以下命令运行 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

图片.png

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

http://www.lryc.cn/news/321312.html

相关文章:

  • Python之Web开发中级教程----ubuntu安装MySQL
  • Flutter开发入门——路由
  • Acrobat Pro DC 2023:PDF编辑与管理的全新体验
  • Linux课程_____网络管理
  • ubuntu20.04_PX4_1.13
  • 12350安全生产举报热线系统解决方案
  • Java 多线程(超详细讲解)上篇
  • 15届蓝桥杯备赛(2)
  • 使用Vuex构建网络打靶成绩管理系统及其测试页面平台思路
  • CPU的核心数与线程数对性能的影响是什么
  • Web前端-HTML
  • 【LLMs+小羊驼】23.03.Vicuna: 类似GPT4的开源聊天机器人( 90%* ChatGPT Quality)
  • 详细了解CSS
  • Java基础-IO流
  • MySQL的基本概念
  • 如何入职车载测试
  • 【物联网】Modbus 协议简介
  • 网络编程-套接字相关基础知识
  • 基于Python的医疗机构药品及耗材进销存信息管理系统
  • Java学习笔记(14)
  • 联合和枚举
  • 《深入Linux内核架构》第2章 进程管理和调度 (3)
  • 鸿蒙Harmony应用开发—ArkTS声明式开发(容器组件:Refresh)
  • 数据资产管理解决方案:构建高效、安全的数据生态体系
  • Visual Studio 2013 - 调试模式下查看监视窗口
  • CTF 题型 SSRF攻击例题总结
  • 【Swing】Java Swing实现省市区选择编辑器
  • spring suite搭建springboot操作
  • mysql重构
  • Linux用户、用户组