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
- 全局安装 newman 和 html 报告插件
打开cmd
npm install -g newman
npm install -g newman-reporter-html
安装完成后验证
newman -v
二、Postman 导出文件
- 你的巡检集合 → Export → 保存为
api-check.json - 巡检环境变量 → 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)
- Win+R 输入
taskschd.msc打开【任务计划程序】 - 右侧【创建任务】(不要用基本任务)
常规页
- 名称:API 接口巡检
- 描述:newman 定时接口巡检
- 安全选项:勾选 不管用户是否登录都要运行 ;勾选使用最高权限运行(防止 node 路径权限问题)
触发器页 → 新建
巡检常用:每 5 分钟 / 每 10 分钟
- 开始任务:按计划
- 设置:重复任务间隔:5 分钟,持续时间:无限期
也可以选每天,固定几点执行
操作页 → 新建
- 操作:启动程序
- 程序或脚本:选
D:\api_monitor\run_monitor.bat - 起始于 (可选):
D:\api_monitor(必须填,否则 newman 路径异常)
条件 / 设置页
- 设置:勾选【如果任务失败,按以下频率重新启动:1 分钟,重启 3 次】
- 勾选【允许任务按需运行】,方便手动测试 保存任务。
手动测试任务
选中任务 → 右键【运行】,看是否正常执行 bat,生成报告。