Postman Newman 实现 API 自动化测试的快速指南

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

什么是 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 开发体验,值得一试。

相关文章
|
8天前
|
弹性计算 JSON Shell
基于Web API的自动化信息收集和整理
【4月更文挑战第30天】
22 0
|
2天前
|
JSON 测试技术 API
pyhttptest 与 RESTful API 测试的完全指南
现在,无论是开发还是使用服务,我们每个人都面临着 REST API 的挑战。同时,我们正处于微服务的流行时代,我们将业务逻辑拆分为多个独立的小服务。这些服务大多遵循 RESTful 原则,并使用 JSON 格式进行通信,因为其简单性使其成为最广泛使用的格式。
|
7天前
|
安全 测试技术 API
API 渗透测试 4 个关键步骤
【5月更文挑战第17天】API渗透测试的四个关键步骤:信息收集、漏洞发现、漏洞利用和报告撰写。
|
8天前
|
Web App开发 JavaScript 测试技术
python自动化测试实战 —— WebDriver API的使用
python自动化测试实战 —— WebDriver API的使用
|
8天前
|
XML JSON API
电商数据集成:利用API接口实现商品详情自动化获取
在电子商务的快速发展中,数据集成成为提升业务效率和增强市场竞争力的关键。API(应用程序编程接口)作为数据集成的核心工具,允许商家自动化获取商品详情,从而实现高效的商品管理和数据分析。本文将探讨如何利用API接口自动化获取商品详情,并分析其对电商业务的影响。
|
8天前
|
API 开发者
免费邮箱API发送邮件测试调试的方法和步骤
本文介绍了使用免费邮箱API如aoksend、Mailgun、SMTP2GO发送邮件的测试调试步骤:选择合适的API,获取访问密钥,配置邮件参数,编写测试代码,调试和测试,查看发送日志,以及优化改进邮件发送功能,确保其稳定运行。
|
8天前
|
测试技术 API 网络架构
Python的api自动化测试 编写测试用例
【4月更文挑战第18天】使用Python进行API自动化测试,可以结合`requests`库发送HTTP请求和`unittest`(或`pytest`)编写测试用例。以下示例: 1. 安装必要库:`pip install requests unittest` 2. 创建`test_api.py`,导入库,定义基础URL。 3. 创建继承自`unittest.TestCase`的测试类,包含`setUp`和`tearDown`方法。 4. 编写测试用例,如`test_get_users`,检查响应状态码和内容。 5. 运行测试:`python -m unittest test_api.py`
17 2
|
8天前
|
JSON 测试技术 API
Python的Api自动化测试使用HTTP客户端库发送请求
【4月更文挑战第18天】在Python中进行HTTP请求和API自动化测试有多个库可选:1) `requests`是最流行的选择,支持多种请求方法和内置JSON解析;2) `http.client`是标准库的一部分,适合需要低级别控制的用户;3) `urllib`提供URL操作,适用于复杂请求;4) `httpx`拥有类似`requests`的API,提供现代特性和异步支持。根据具体需求选择,如多数情况`requests`已足够。
20 3
|
8天前
|
XML 测试技术 API
Python的API自动化测试
【4月更文挑战第17天】使用Python进行API自动化测试,可选框架如unittest、pytest。结合requests库发送HTTP请求,编写测试用例描述场景,使用断言验证响应。通过参数化测试提高覆盖率,集成CI工具实现自动化。记录测试结果,如用pytest和requests编写简单测试脚本。利用Postman、Allure和mocking技术优化测试流程。持续维护测试用例以应对API变化。
30 2
|
8天前
|
安全 测试技术 API

热门文章

最新文章