windows+Postman Newman+接口巡检

Windows 用「Newman + bat 批处理脚本 + Windows 任务计划程序」就能实现:定时跑接口巡检、生成 HTML 报告、失败推送告警。

整套全部跑在 Windows 电脑 / Windows 服务器上,不用装 Jenkins,维护简单。

一、前置安装(Windows)

1. 安装 Node.js

官网下载:Node.js --- Run JavaScript Everywhere 选 LTS 长期支持版,安装时勾选 Add to PATH。 安装完成,cmd 里验证:

复制代码
node -v
npm -v
  1. 全局安装 newman 和 html 报告插件

打开cmd

复制代码
npm install -g newman
npm install -g newman-reporter-html

安装完成后验证

复制代码
newman -v

二、Postman 导出文件

  1. 你的巡检集合 → Export → 保存为 api-check.json
  2. 巡检环境变量 → Export → 保存为 env.json

新建一个文件夹,比如 D:\api-monitor,把这两个 json 文件放进去。

三、编写 bat 脚本(核心:run-monitor.bat)

D:\api-monitor 新建文本文档,粘贴下面内容,另存为 run-monitor.bat,编码选 ANSI。

复制代码
@echo off
chcp 65001 >nul
setlocal

:: 工作目录
set WORK_DIR=D:\api_monitor
set COLLECTION=%WORK_DIR%\collection.json
set ENV=%WORK_DIR%\env.json
set REPORT_DIR=%WORK_DIR%\reports

:: 生成时间戳,报告按时间命名
for /f "tokens=1-4 delims=/ " %%a in ('date /t') do set dt=%%a%%b%%c
for /f "tokens=1-3 delims=:." %%a in ('time /t') do set tm=%%a%%b%%c
set REPORT_FILE=%REPORT_DIR%\monitor_%dt%_%tm%.html

:: 创建报告文件夹不存在就新建
if not exist %REPORT_DIR% mkdir %REPORT_DIR%

echo ====================== 接口巡检开始 ======================
echo 巡检时间:%date% %time%
echo 报告输出:%REPORT_FILE%

:: newman执行巡检,输出html报告
newman run %COLLECTION% -e %ENV% ^
-r html,cli ^
--reporter-html-export %REPORT_FILE%

:: 获取newman退出码,0=全部成功,非0=有接口断言失败
set EXIT_CODE=%errorlevel%
echo newman返回码:%EXIT_CODE%

if %EXIT_CODE% equ 0 (
    echo ✅ 全部接口巡检通过
) else (
    echo ❌ 接口巡检存在失败!
    :: =====可选:调用钉钉webhook发送告警=====
    :: curl可以下载windows curl,或者用powershell发消息
    powershell -Command "$body='{\"msgtype\":\"text\",\"text\":{\"content\":\"【接口巡检告警】存在失败接口,请查看报告:%REPORT_FILE%\"}}';Invoke-RestMethod -Uri 'https://oapi.dingtalk.com/robot/send?access_token=xxx' -Method Post -Body $body -ContentType 'application/json'"
)

echo ====================== 巡检结束 ======================
endlocal
pause

注:执行脚本+运行环境,配置上自己对应的文件

测试 bat

双击run_monitor.bat,能正常跑、生成 html 报告,报错正常提示,再配置定时任务。

四、Windows 任务计划程序配置(定时执行 bat)

  1. Win+R 输入 taskschd.msc 打开【任务计划程序】
  2. 右侧【创建任务】(不要用基本任务)

常规页

  • 名称:API 接口巡检
  • 描述:newman 定时接口巡检
  • 安全选项:勾选 不管用户是否登录都要运行 ;勾选使用最高权限运行(防止 node 路径权限问题)

触发器页 → 新建

巡检常用:每 5 分钟 / 每 10 分钟

  • 开始任务:按计划
  • 设置:重复任务间隔:5 分钟,持续时间:无限期

也可以选每天,固定几点执行

操作页 → 新建

  • 操作:启动程序
  • 程序或脚本:选 D:\api_monitor\run_monitor.bat
  • 起始于 (可选):D:\api_monitor必须填,否则 newman 路径异常

条件 / 设置页

  • 设置:勾选【如果任务失败,按以下频率重新启动:1 分钟,重启 3 次】
  • 勾选【允许任务按需运行】,方便手动测试 保存任务。

手动测试任务

选中任务 → 右键【运行】,看是否正常执行 bat,生成报告。

相关推荐
Tinyfacture5 天前
postman抓取登录鉴权码token及设置全局变量
测试工具·postman
川石课堂软件测试5 天前
涨薪技术|Prometheus之HTTP API中使用PromQL
网络协议·测试工具·jmeter·http·单元测试·postman·prometheus
x10n96 天前
Postman 汉化完整指南
测试工具·lua·postman
AI情绪识别开源10 天前
检信 Allemotion 认知功能障碍矫正软件· 数据方案
人工智能·postman
程序员杰哥14 天前
如何做接口测试?
自动化测试·python·测试工具·职场和发展·测试用例·接口测试·postman
测试老哥17 天前
Postman获取token并设置token依赖步骤
自动化测试·软件测试·python·测试工具·测试用例·接口测试·postman
2601_9621819618 天前
Redis Redis介绍、安装 - Redis客户端
数据库·redis·postman
redfred19 天前
hoppscotch 使用教程:开源 API 调试工具 Postman 免费替代 Web/桌面/Docker 部署详解
开源·postman·graphql
测试秃头怪19 天前
Postman中变量的使用
自动化测试·软件测试·python·测试工具·测试用例·接口测试·postman