痛点: 作为一名测试工程师和开发者,我曾尝试过市面上各种测试平台 - 从 Postman、JMeter 到 MeterSphere、Katalon,也试过自己编写自动化测试代码。但它们都存在同样的问题:
- 📝 手工劳动太多:为类似的场景重复编写测试代码
- 🐌 效率太低:创建简单的 API 测试都要花费数小时
- 🔄 复用性差:在不同测试用例间反复复制粘贴代码
- 🧩 学习成本高:复杂的工具需要几周时间才能上手
解决方案: 我决定打造一个我一直梦想拥有的测试平台。AI TestMind 源于我多年的自动化测试实践经验 - 它是我自己测试框架的进化版本,专为消除重复劳动、让测试用例编写变得舒适高效而设计。
成果:
- ⚡ 快速:几分钟内创建复杂测试流程,而非几小时
- 🎨 可视化:无需编码 - 只需拖拽、连接
- 🤖 智能:AI 理解你的意图,自动生成完整测试
- 😊 愉悦:终于有了一款真正好用的测试工具
docker run -d \
--name aitestmind \
-p 3000:3000 \
-p 8001:8001 \
-p 8899:8899 \
-e DATABASE_URL="file:/app/prisma/dev.db" \
-e EXECUTOR_URL="http://localhost:8001" \
-v $(pwd)/logs:/app/logs \
simonbo106/aitestmind:latest
# 访问应用
open http://localhost:3000📦 Docker Hub: https://hub.docker.com/r/simonbo106/aitestmind
⚠️ 注意: Docker Hub 镜像针对 ARM64 优化,x86_64 服务器请使用方式 B 本地构建
# 1. 克隆仓库
git clone https://github.com/bobby-sheng/aitestmind.git
cd aitestmind
# 2. 构建镜像(⚠️ 必须指定服务器 IP)
docker build -f Dockerfile.all-in-one \
--build-arg NEXT_PUBLIC_EXECUTOR_URL=http://你的服务器IP:8001 \
-t aitestmind:latest .
# 3. 运行容器
docker run -d \
--name aitestmind \
-p 3000:3000 \
-p 8001:8001 \
-p 8899:8899 \
-e DATABASE_URL=file:/app/prisma/dev.db \
-v $(pwd)/logs:/app/logs \
--restart unless-stopped \
aitestmind:latest💡 为什么要本地构建?
- 支持自定义
NEXT_PUBLIC_EXECUTOR_URL(浏览器访问执行器的地址)- 适配不同 CPU 架构(x86_64/AMD64)
- 如果浏览器提示
Failed to fetch,说明需要重新构建并指定正确的服务器 IP
# 1. 克隆仓库
git clone https://github.com/bobby-sheng/aitestmind.git
cd aitestmind
# 2. 运行初始化脚本(自动完成所有配置和构建)
chmod +x setup.sh
./setup.sh
# 3. 启动前端(终端 1)
npm run start
# 4. 启动执行器(终端 2)
cd executor
source venv/bin/activate
python main.py📝 默认管理员账号: admin / admin123
🎉 完成! 访问 http://localhost:3000
AI TestMind 是新一代 API 测试平台,通过 三大核心能力 革新测试工作流:
访问网站 → AI 自动识别 API →
智能分类 → 生成 Schema → 保存到 API 仓库
🎬 3 种采集模式:
• 浏览器插件(Playwright)- 最简单
• HAR 文件导入 - 最快速
• mitmproxy 代理 - 最专业
从 API 仓库选择接口 → 拖拽到画布 →
连接节点 → 配置参数 → 添加断言 → 保存用例
🎨 支持复杂场景:
• 变量引用和传递
• 并行执行
• 断言和等待
描述需求:"测试用户登录后创建订单"
↓
[AI 智能思考:搜索 API + 设计流程 + 生成断言]
↓
┌────────┐ ┌──────┐ ┌───────┐
│ 登录 │──▶│ 购物车│──▶│ 下单 │
│ API │ │ API │ │ API │
└────────┘ └──────┘ └───────┘
✅ 断言 ✅ 提取 ✅ 清理
状态=200 token 删除订单
📁 自动统一分类:所有生成的用例归属同一业务分类
🏷️ 智能标签:自动标记测试类型和场景
| 功能特性 | AI TestMind | Postman | JMeter | MeterSphere | Katalon |
|---|---|---|---|---|---|
| 🤖 AI 智能生成 | ✅ GPT-4 驱动 | ❌ 手动编写 | ❌ 手动编写 | ❌ 手动编写 | |
| 🎨 可视化流程 | ✅ 拖拽式 | ❌ XML/代码 | ✅ 支持 | ||
| 📊 实时监控 | ✅ 实时仪表盘 | ✅ 支持 | ✅ 支持 | ||
| 🎬 智能捕获 | ✅ 3 种模式 | ❌ 手动 | |||
| 🧩 学习曲线 | 🟢 5 分钟 | 🟡 1 小时 | 🔴 2 天 | 🟡 2 小时 | 🟡 1 天 |
| 🌐 多语言 | ✅ 中英文 | ✅ 多语言 | ✅ 中英文 | ✅ 多语言 | |
| 💰 成本 | 🟢 免费开源 | 🟡 部分免费 | 🟢 免费 | 🟢 开源 | 🔴 付费 |
| 功能 | 传统方式 | AI TestMind | 效率提升 |
|---|---|---|---|
| 🎬 API 采集 | 手动记录 URL 和参数 | AI 自动识别和分类 | 10x |
| 🎨 流程编排 | 编写脚本代码 | 拖拽可视化构建 | 20x |
| 🤖 用例生成 | 逐个手写测试用例 | 自然语言一键生成 | 50x |
- ⚡ 实时反馈: 实时查看测试执行和详细日志
- 📁 智能分类: 自动统一管理测试用例分类
- 🌍 多语言: 内置中英文支持
- 🎨 主题定制: 支持明暗主题切换,可自定义配色方案
- 🔧 可扩展: 插件系统和自定义函数
- 🐳 易部署: Docker、Windows、Linux、macOS
完整工作流: 🎬 采集 API → 🎨 编排流程 → 🤖 AI 生成 → ✅ 执行测试
三种采集模式,适应不同场景:
# 访问前端页面进行采集
访问 http://localhost:3000/api-capture
选择 "Playwright 浏览器录制" → 输入目标 URL → 点击 "开始录制"- ✅ 最简单: 无需任何配置
- ✅ 可视化: 实时看到采集的 API
- ✅ 智能过滤: 自动过滤静态资源
- ✅ 分类识别: AI 自动识别 API 业务分类
导出 HAR 文件 → 拖拽上传 → 智能解析 → 保存到仓库
- ⚡ 秒级导入: 支持批量导入
- 🎯 精准提取: 请求/响应完整保留
- 📊 智能分组: 自动按域名和路径分类
适用场景:
- 📱 移动应用(iOS/Android APP)
- 💬 小程序(微信、支付宝)
- 🌐 浏览器 HTTPS 流量
- 🖥️ 桌面应用程序
快速启动:
# 1. 在 Web 界面启动
访问 http://localhost:3000/api-capture
选择 "mitmproxy 代理录制" → 点击 "启动录制"
# 2. 配置系统代理
macOS: 系统设置 → 网络 → 代理 → HTTP/HTTPS → localhost:8899
Windows: 设置 → 网络 → 代理 → 手动 → localhost:8899
# 3. 安装 HTTPS 证书(首次使用)
访问 http://mitm.it → 下载对应平台证书 → 安装并信任
# 4. 开始捕获
访问任何网站或启动 APP → 实时查看捕获的请求🌐 独立 Chrome 浏览器代理(推荐):
不影响现有浏览器,启动一个独立的 Chrome 实例挂载代理:
# Windows (CMD)
start chrome --proxy-server="你的服务器IP:8899" --user-data-dir="C:\Temp\ChromeProxyProfile"
# Windows (PowerShell)
& "C:\Program Files\Google\Chrome\Application\chrome.exe" --proxy-server="你的服务器IP:8899" --user-data-dir="C:\Temp\ChromeProxyProfile"
# macOS
/Applications/Google\ Chrome.app/Contents/MacOS/Google\ Chrome --proxy-server="你的服务器IP:8899" --user-data-dir="/tmp/ChromeProxyProfile"
# Linux
google-chrome --proxy-server="你的服务器IP:8899" --user-data-dir="/tmp/ChromeProxyProfile"💡
--user-data-dir参数创建独立的浏览器配置,不会加载主浏览器的书签、扩展和登录状态,实现彻底隔离。
核心特性:
- 🔐 HTTPS 完整支持: 自动解密 HTTPS 流量
- 📊 实时推送: SSE 技术实时显示捕获的请求
- 🎯 精确控制: 启动、暂停、继续、停止、清空
- 🗂️ 完整数据: 请求/响应头、参数、Body 全记录
- 💾 批量保存: 选中请求批量保存到 API 仓库
📖 详细文档: mitmproxy 完整使用指南 →
采集后自动完成:
- 📝 生成完整的 API Schema(参数、类型、示例值)
- 🏷️ 智能分类标签
- 💾 保存到 API 仓库,随时可用
从 API 仓库到测试用例,只需拖拽:
1. 从左侧 API 仓库拖拽接口到画布
2. 连接节点,配置参数
3. 添加断言和变量提取
4. 保存,立即可执行
强大的编排能力:
- 🎯 多种节点: API、并发、等待、断言
- 🔗 智能引用: 拖拽即可引用前置节点的响应数据
- ✅ 丰富断言: 状态码、JSONPath、响应时间、正则表达式
- 🔀 流程控制: 串行、并行执行
- 💾 实时保存: 自动保存,支持撤销/重做
节点类型:
- 🌐 API 节点: 发送 HTTP 请求
- ⚡ 并发节点: 同时执行多个 API
- ⏰ 等待节点: 延迟执行
- ✅ 断言节点: 验证响应数据
变量系统:
- 📤 响应提取: JSONPath、正则、全量提取
- 📥 变量引用: `{{变量名}}` 语法
- 🔄 变量传递: 跨节点自动传递
- 🎲 运行时函数: `${{random(8)}}、${{timestamp()}}`
只需简单描述,AI 自动生成完整测试用例:
输入: "测试用户创建接口,username 和 email 不能为空"
AI 自动生成:
✅ 用户创建 - 正常用例(含后置清理)
✅ 用户创建 - username 为空
✅ 用户创建 - email 为空
📁 统一分类: 用户管理
🏷️ 标签: ["参数校验", "接口测试", "AI生成"]
输入: "测试用户登录后创建订单的完整流程"
AI 自动生成:
✅ E2E - 用户登录 - 创建订单(3个步骤,含清理)
✅ E2E - 用户登录 - 查询订单(2个步骤)
✅ E2E - 异常: 未登录创建订单(1个步骤)
📁 统一分类: 订单管理
🏷️ 标签: ["E2E测试", "流程测试", "AI生成"]
AI 自动完成:
- 🔍 智能搜索: 从 API 仓库搜索相关接口
- 🎯 场景设计: 生成正常 + 异常用例
- 📁 统一分类: 同批生成的用例使用相同分类
- ✅ 智能断言: 自动添加合理的断言
- 🔗 变量引用: 自动识别和配置变量传递
- 🧹 后置清理: 为成功用例添加清理步骤
- 💾 直接保存: 一键保存到数据库
支持的 AI 提供商:
- OpenAI (GPT-4, GPT-3.5)
- DeepSeek(深度求索)⚡ 性价比首选
- Claude (Anthropic)
- 百度文心一言
- 阿里通义千问
- 智谱 AI
- Ollama(本地部署,完全免费)
实时查看测试执行过程:
- 📊 实时仪表盘: 通过 SSE 实时状态更新
- 🎯 节点级日志: 点击任意节点查看详细执行信息
- ⏸️ 暂停/继续: 控制执行流程
- 🔄 失败重试: 一键重试失败的测试
- 📝 详细报告: 请求/响应、耗时、断言结果
- 📈 执行历史: 追踪趋势变化
前端:
Next.js 16 + React 19 + TypeScript
├── UI 组件: shadcn/ui + Tailwind CSS 4.0
├── 主题系统: 支持明暗主题切换,可自定义配色
├── 流程编辑器: React Flow
├── 状态管理: React Query + Context
└── 国际化: next-intl
后端:
Node.js + Python
├── API 路由: Next.js API Routes
├── 数据库: SQLite + Prisma ORM
├── 执行引擎: Python (FastAPI)
├── 自动化: Playwright
└── 捕获服务: mitmproxy
AI 集成:
多提供商支持
├── OpenAI (GPT-4, GPT-3.5)
├── DeepSeek(深度求索)
├── Claude
├── 百度文心一言
├── 阿里通义千问
├── 智谱 AI
└── Ollama(本地部署)
graph TB
subgraph "前端 - Next.js"
A[Web 界面] --> B[流程编排器]
A --> C[AI 对话]
A --> D[API 捕获]
end
subgraph "后端服务"
E[Next.js API] --> F[Prisma ORM]
F --> G[(SQLite)]
E --> H[Python 执行器]
E --> I[AI 客户端]
end
subgraph "执行引擎"
H --> J[测试运行器]
J --> K[Playwright]
J --> L[HTTP 客户端]
end
subgraph "捕获服务"
D --> M[浏览器录制]
D --> N[HTTP 代理]
D --> O[mitmproxy]
end
B --> E
C --> I
I --> P[AI 提供商]
测试场景: 完整购买流程
├── 用户登录
├── 浏览商品
├── 加入购物车(并发)
│ ├── 商品 A
│ ├── 商品 B
│ └── 商品 C
├── 使用优惠券
├── 结算
├── 支付
└── 清理: 删除测试订单 ✨
测试场景: 服务编排
├── 认证服务
│ └── 提取: accessToken
├── 用户服务(并发)
│ ├── 创建资料
│ ├── 更新偏好
│ └── 上传头像
├── 通知服务
│ └── 断言: 邮件已发送
└── 审计服务
└── 验证: 所有操作已记录
# .github/workflows/api-tests.yml
name: API 测试
on: [push, pull_request]
jobs:
test:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v2
- name: 运行 AI TestMind 测试
run: |
docker-compose up -d
npm run test:api"AI TestMind 让我们的测试效率提升了 300%!AI 生成功能改变了游戏规则。"
— 某电商平台高级测试工程师
"终于有一个真正理解自然语言的测试工具了。可视化流程编排让复杂场景变得简单。"
— 某 SaaS 公司技术负责人
"我们用 AI TestMind 替换了 3 个工具。实时监控和详细日志每天为我们节省数小时。"
— 某金融科技创业公司 DevOps 经理
| 文档 | 说明 |
|---|---|
| Docker 快速开始 | Docker 部署指南 |
| 完整部署指南 | 详细部署文档 |
| 环境变量说明 | 配置选项说明 |
| 文档中心 | 完整文档索引 |
如果浏览器提示 Failed to fetch 或 执行器地址是否正确: http://localhost:8001:
原因: NEXT_PUBLIC_EXECUTOR_URL 配置不正确
解决方法:
# 1. 修改 .env 文件中的执行器地址为服务器 IP
NEXT_PUBLIC_EXECUTOR_URL=http://你的服务器IP:8001
# 2. 重新构建(重要!NEXT_PUBLIC_ 变量在构建时嵌入)
npm run build
# 3. 重启服务
npm run start💡 提示: Docker 部署时需要在构建时传入
--build-arg NEXT_PUBLIC_EXECUTOR_URL=http://你的服务器IP:8001
我们欢迎社区贡献!🎉
- 🍴 Fork 本仓库
- 🌿 创建特性分支 (
git checkout -b feature/amazing-feature) - 💾 提交你的改动 (
git commit -m 'feat: 添加某个很棒的功能') - 📤 推送到分支 (
git push origin feature/amazing-feature) - 🎉 开启 Pull Request
- 遵循 约定式提交
- 为新功能编写测试
- 更新相关文档
- 确保 CI 通过
加入我们不断壮大的社区!
- 📢 每周技术分享:最新功能介绍和最佳实践
- 🐛 Bug 反馈与讨论:快速响应和解决问题
- 💬 用户交流:分享使用经验和测试技巧
- 🎯 功能建议:参与产品路线图讨论
- 🏆 贡献者表彰:感谢社区贡献
本项目采用 非商业使用协议 - 详见 LICENSE 文件
- 📚 个人学习:学习、研究、实验
- 🎓 教育用途:教学、培训、学术研究
- 🏠 个人项目:个人使用,不用于盈利
- 🏢 商业使用:公司、企业、商业项目
- 💰 盈利服务:提供付费服务、SaaS 平台
- 🔄 二次销售:销售、分发给商业客户
如果你需要将本项目用于商业目的:
- 🏢 企业内部使用
- 💰 提供商业服务
- 🔧 客户定制开发
请联系作者获取商业授权:
- 📧 邮箱 Email:simonboz@outlook.com
- 💬 微信 WeChat:
由 AI TestMind 团队和贡献者用 ❤️ 构建
灵感来源:
- MeterSphere - 一站式测试平台
- Postman - API 开发平台
- n8n - 工作流自动化
- Playwright - 浏览器自动化
特别感谢:
- 所有贡献者
- 开源社区
- 早期采用者和测试者
- AI 提供商(OpenAI、DeepSeek 等)
像思考一样编排,用智能来测试 🧠
由开发者用心打造,为开发者服务











