AI测试 AI 测试工具平台大升级 - 迭代完善了很多实用和业务中常见的痛点,欢迎各位大神指点

Jackyang · 2026年08月12日 · 224 次阅读

AI 测试工具平台:https://github.com/ywq2019/ai_test_agent

基于 AI 大模型 + LangGraph + Playwright 的智能化零代码全场景自动化测试平台,覆盖 WebUI 自动化 / 接口自动化 / 渗透测试 三引擎,支持 Claude / DeepSeek / GPT / Gemini / Ollama 等任意模型一键切换。

📐 设计思路与技术决策 →

AI 测试平台演示 > ⏳ 演示包含 AI 生成测试用例的完整过程,AI 推理需要一定时间,请耐心观看。

快速部署

Docker 一键部署(推荐)

环境要求: Docker 20.10+(含 Docker Compose v2)

git clone https://github.com/ywq2019/ai_test_agent.git
cd ai_test_agent

编辑 .env.docker,修改以下配置(其余保持默认即可):

配置项 说明 生成命令
SECRET_KEY JWT 签名密钥,默认值有安全风险 python -c "import secrets; print(secrets.token_hex(32))"
POSTGRES_PASSWORD 数据库密码,同时改 DATABASE_URL 里对应的密码
AI_API_KEY 大模型 API Key(也可部署后在平台「大模型配置」页填写)
AI_API_URL 大模型接口地址,默认 DeepSeek,按需替换
AI_MODEL 模型名称,与 AI_API_URL 对应
docker compose up -d

访问 http://服务器IP:4000,默认账号 admin / admin123登录后立即修改密码

# 更新
git pull && docker compose up -d --build

# 查看日志
docker compose logs -f app

# 停止
docker compose down

数据备份:数据库和文件存储在 Docker 命名卷 pg_data / app_data 中。迁移时一并复制即可。

docker volume inspect ai_test_agent_pg_data   # 查看实际路径

升级说明:新版本在服务启动时自动执行数据库迁移,直接 --build 重启即可,无需手动操作。

浏览器说明:Docker 镜像基于官方 mcr.microsoft.com/playwright/python:v1.39.0-jammy,Chromium 已内置,无需额外安装。本地开发(Windows) 需手动安装并配置 PLAYWRIGHT_BROWSERS_PATH 指向浏览器目录(.env 文件已有示例)。

可选:ARQ 任务队列(多 Worker)

默认使用进程内 BackgroundTasks,任务重启后丢失。需要持久化任务队列时启用:

# .env.docker 中取消注释并填写:
REDIS_URL=redis://redis:6379/0

# 启动时加 --profile worker
docker compose --profile worker up -d

# 可独立横向扩容
docker compose --profile worker up -d --scale worker=3

可选:Nginx 反向代理

默认不启动,需要域名 / HTTPS 时使用:

# 编辑 nginx.conf,填写域名,按需取消 SSL 注释
docker compose --profile nginx up -d

本地启动

环境要求: Python 3.11+,Node 18+

# 1. 克隆项目
git clone https://github.com/ywq2019/ai_test_agent.git
cd ai_test_agent

# 2. 配置文件(git clone 不包含 .env)
cp .env.docker .env
# 编辑 .env,至少填写 AI_API_KEY 和 AI_API_URL
# 本地启动使用 SQLite,DATABASE_URL 保持默认即可

# 3. 安装 Python 依赖
pip install -r requirements.txt

# 4. 安装 Playwright 浏览器
playwright install chromium
# Linux 还需要(Mac/Windows 跳过):
# sudo playwright install-deps chromium

# 5. 构建前端
cd ui && npm install && npm run build && cd ..

# 6. 启动
python main.py   # 访问 http://localhost:4000

开发模式(前端热更新):

python main.py          # 终端1:后端 4000
cd ui && npm run dev    # 终端2:前端 8090(代理到后端)

本地 vs Docker 数据库


本地启动 Docker 部署
数据库 SQLite(项目根目录 uitest_agent.db PostgreSQL(Docker 卷 pg_data
RAG 向量检索 降级为关键词匹配(不支持 pgvector) pgvector 完整支持
数据位置 项目根目录下 .db 文件 Docker 命名卷
数据互通 ❌ 两边数据不互通

建议生产环境直接使用 Docker 部署,避免后续迁移麻烦。


核心功能

AI 用例生成(文档驱动)

上传需求文档,AI 按功能模块并行生成覆盖 6 种测试方法的高质量用例。

功能 说明
异步后台生成 提交后立即返回,完成后 WebSocket 推送,进度实时持久化(断线重连可恢复)
分段并行生成 提取模块后并发调用 AI(Semaphore=4),每次输出可控,不超时
6 种测试方法 等价类、边界值、判定表、场景法、错误推测、状态转换
导出格式 Markdown / XMind / Excel(含优先级色标、测试结果下拉、条件格式)
需求变更增量更新 AI Diff 分析 → 仅对变更模块做用例级合并,unchanged 模块直接保留
需求追踪矩阵 提取结构化需求条目,建立用例 - 需求双向映射,生成覆盖率矩阵;一键分析缺口并生成补充用例
覆盖度优化 逐模块分析覆盖盲区(并发 4,单轮 LLM,控制在 120s 内完成)
RAG 知识库 文档分段入库(pgvector 向量检索,不支持时降级关键词匹配),生成时检索相关段落
超大文档支持 BeautifulSoup 深度清洗 HTML;分批并行提取模块(20000 字/批)
截断 JSON 自动修复 LLM 输出被截断时自动补齐,避免丢失已生成内容

WebUI 自动化

Playwright 驱动浏览器,以「AI 场景规划 → 录制 → 健壮化 → 执行」为主线,用最少的脚本维护成本覆盖完整 UI 测试流程。

功能 说明
AI 场景规划 分析页面元素和需求文档,按核心流程/表单验证/增删改/筛选/异常反馈自动规划录制场景,支持追加/重新规划
录制 → 场景联动 场景规划结果在抽屉中展示,点击「开始录制」直接启动有头浏览器;录制完成自动标记场景为已录制
录制健壮化 保存时自动推导多候选 selector(A/B/C/D 稳定性评级),关键操作后插入 wait + assert,降低执行失败率
可视化步骤编辑器 三 Tab 弹窗(基本信息 / 步骤编辑器 / 前置步骤);行内编辑 action/selector/value/expected;D 级 selector 标红;点击胶囊展开候选列表一键切换
前置步骤 用例级前置操作(导航/点击/填写),与主步骤共用同一 Page;前置失败则用例直接标为 failed
登录态快照 为任务指定登录用例,批量执行前自动运行一次并保存 storage_state;后续每条用例直接恢复登录态,零耗时建立会话;支持 TTL 自动刷新
AI 生成用例 配置面板支持自然语言测试重点、指定模块、期望数量;服务端用页面真实 selector 而非 LLM 自造;按优先级硬截断到目标数量
执行状态 用例列表内联显示上次执行结果(通过/失败/错误原因);实时进度浮层(右下角,非阻塞)展示步骤轨道和用例计数
多 Selector 回退 执行时逐候选探测,找到可用元素即执行,应对动态 id / 框架重构
多浏览器并行 同一批用例同时在 Chromium / Firefox / WebKit 执行,各出一份报告
元素别名库 selector 命名为别名,步骤编辑器 @ 触发补全,变更只改别名库
变量替换 {{变量名}} 语法从任务环境变量表替换,支持多环境参数化
pytest 导出 一键导出为标准 Python Playwright 测试脚本(zip 包)

📖 步骤编辑详细说明请参阅 WebUI 步骤编辑操作手册

接口自动化

从「项目 → 用例 → 执行 → 报告」全链路打通,支持 Swagger / 代码分析 / 自然语言三种用例来源,内置参数化引擎、前置依赖、CSV 数据驱动、压力测试和 PDF 报告,适用于日常接口回归与 CI/CD 集成。

项目与鉴权管理

功能 说明
多项目管理 每个项目独立配置 Base URL、代理(HTTP/SOCKS5)、Hosts 映射
多种鉴权方式 Bearer Token / Basic Auth / API Key,统一在项目级配置,执行时自动注入
多环境支持 每个项目可配置多套环境(测试/预发布/生产),执行时下拉切换 Base URL

AI 用例生成

输入源 说明
Swagger / OpenAPI 解析接口定义,真实探测获取响应结构,自动生成正常 / 异常 / 边界用例
Curl 命令 粘贴 curl,自动解析 method/URL/headers/body,注入精确数据生成用例
自然语言描述 描述接口行为,AI 推理补全请求体、断言与边界
代码(Python/Java/Go/Node/PHP) 静态分析业务代码,提取接口调用生成用例
Postman/HAR 导入 解析 Postman Collection 或 HAR 文件,直接导入为用例

AI 生成链路优化:真实接口探测 → JSON Mode 强制输出 → 容错补全(缺失字段自动填充)→ 模块名校验(防幻觉)→ json_path 自检,确保生成质量。

参数化与前置依赖

功能 说明
全局变量池 {{gvar:name}} 语法引用跨用例共享变量,支持提取表达式写回
内置函数 {{uuid()}}{{timestamp()}} 等动态值生成,开箱即用
自定义脚本函数 支持 Python 脚本扩展参数化逻辑,满足复杂签名/加密场景
前置依赖 配置登录前置用例,自动提取 Token;鉴权失败自动重试,无需手动维护 Cookie
CSV 数据驱动 上传 CSV 文件,每行数据作为独立参数组执行一次用例,支持多行批量验证

执行、压测与报告

功能 说明
单次执行 选择全部或指定用例,实时 WebSocket 推送结果(频道按 project_id 隔离)
报告详情 每条用例展示请求/响应完整信息,右键一键复制为 curl 命令(自动拼接 method/headers/body)
压力测试 配置并发数 / 持续时长 / 爬坡策略,实时 TPS / P95 / P99,ECharts 图表
PDF 导出 含用例明细 + AI 分析,一键归档

Mock 服务

轻量 HTTP Mock,无需依赖真实后端即可联调前端。

功能 说明
规则匹配 按 method + path + 请求参数精准匹配,支持通配符路径
动态响应 配置响应状态码、Headers、Body(支持 JSON / 纯文本)
延迟模拟 配置响应延迟,模拟慢接口
请求记录 每次命中记录请求详情,方便排查联调问题

测试计划

跨项目接口用例编排,共享变量上下文(登录 → 下单 → 查询)。

功能 说明
步骤编排 从任意项目拖入用例,自由排序、启用/禁用
共享变量 所有步骤共享 var_store,前步提取后步直接引用
定时执行 Cron 表达式定时触发,APScheduler 管理,服务重启后自动恢复
CI/CD 集成 Webhook token 触发,支持 Jenkins / GitHub Actions,可选执行完成回调
报告 PDF 导出 含步骤明细 + AI 分析

接口渗透测试

基于接口自动化项目中已有的用例,对目标 API 发起安全扫描,自动发现 OWASP API Top 10 及常见漏洞,每条漏洞由 AI 生成定制修复建议,并支持 PDF 报告导出。

⚠️ 声明:本功能仅面向已授权的安全测试场景(内部测试、渗透测试授权委托书、CTF)。请勿对未授权目标使用。

12 个扫描模块覆盖:未授权访问、越权(IDOR)、敏感信息泄露、SQL 注入、JWT 安全缺陷、速率限制缺失、批量赋值、CORS 配置错误、HTTP 动词篡改、SSRF、文件上传漏洞、文件下载路径穿越。

工作空间

多租户隔离的顶层单元,一个工作空间对应一套独立的测试数据。

功能 说明
多空间管理 每个用户可创建多个工作空间,数据互不干扰
成员协作 邀请成员加入,role 分 owner(管理成员)/ member(读写数据)
跨模块隔离 AI 用例、WebUI 任务、接口项目、测试计划均按工作空间隔离
WS 推送隔离 WebSocket 广播按工作空间路由,不同空间的执行进度互不干扰
admin 穿透 系统管理员可跨空间查看所有数据

稳定性与安全

多用户并发

机制 默认值 配置项
全局 LLM Semaphore 6 并发 LLM_CONCURRENCY
Semaphore 等待超时 60s LLM_SEM_TIMEOUT
后台生成任务上限 3 个 MAX_ACTIVE_GENERATE
浏览器 Context 并发上限 6 个 tools/browser.py: MAX_CONCURRENT
同一任务重复执行保护 409 响应 进程内 _running_tasks set
同一任务重复录制保护 409 响应 进程内 _active_recording_tasks set
接口 WS 频道隔离 按 project_id 路由 api_gen_{id} / api_exec_{id} / api_load_{id}
接口频率限制 生成 5 次/分钟,优化/分析 3 次/分钟 slowapi,按真实 IP
反向代理 IP 识别 X-Real-IPX-Forwarded-For → TCP Nginx 反代时自动识别

数据隔离

工作空间级:AI 用例、WebUI 任务、接口项目、测试计划均挂在工作空间下,成员只能访问所在空间的数据。

用户级:未挂载工作空间的数据,普通用户只能看到自己创建的记录;admin 可查看全部。服务启动时自动将历史 NULL 数据归属到默认管理员账号,升级无感知。

执行隔离:每条用例独立 Playwright Context,cookie / session / storage 完全隔离,多用户并发执行互不影响。

自愈与告警

机制 说明
重启状态恢复 服务重启时自动将卡住的生成任务重置为 failed,推送 WebSocket 通知
文件自动清理 删除记录时清理整条版本链文件;每天 00:05 扫描孤儿文件
日志定时清理 每天 00:05 清理过期日志(默认保留 7 天),LOG_RETENTION_DAYS 可调
定时任务调度 APScheduler 管理 Cron 定时计划,服务重启自动恢复,不丢任务
Webhook 告警 ERROR 级日志自动推钉钉/企微/飞书,5 分钟防刷屏;ALERT_WEBHOOK_URL 留空则静默

CI/CD 集成

# 1. 生成 webhook token(需登录)
curl -X PUT "http://your-host:4000/api/v1/test-plans/1/webhook-token" \
  -H "Authorization: Bearer <JWT>"
# → {"webhook_token": "xxx", "trigger_url": "..."}

# 2. 在 Jenkins / GitHub Actions 里触发
curl -f -X POST "http://your-host:4000/api/v1/test-plans/1/trigger?token=xxx"

# 3. 可选:执行完成后回调
curl -f -X POST "...?token=xxx&callback_url=https://ci.example.com/hook"

AI 集成

所有 AI 功能统一读取「大模型配置」页,自动判断 Anthropic / OpenAI 格式,支持一键切换:

提供商 模型示例 API URL
Claude claude-opus-5 https://api.anthropic.com
DeepSeek deepseek-v4-flash https://api.deepseek.com
OpenAI gpt-4o https://api.openai.com
Gemini gemini-2.0-flash https://generativelanguage.googleapis.com
Ollama(本地) llama3 http://localhost:11434
任意 OpenAI 兼容代理 填入代理地址即可

Prompt 统一管理在 skills/prompts/*.yaml无需重启即可生效(懒加载 + LRU 缓存,修改 YAML 后下次调用自动读新版本)。


技术栈

技术 说明
后端 Python 3.11+ / FastAPI 0.138 全异步 ASGI,Uvicorn 单进程
Agent LangGraph 1.2 / LangChain 1.3 LangGraph 编排 Agent 工作流,LangChain 管理工具注册
ORM SQLAlchemy 2.0 SQLite(本机)/ PostgreSQL(Docker)双兼容,自动迁移
浏览器 Playwright 1.39 UI 自动化 + 录制回放 + PDF 报告导出
任务队列 ARQ + Redis(可选) 多 Worker 持久化任务队列,不配置时降级为 BackgroundTasks
定时调度 APScheduler 3.11 测试计划 Cron 定时执行,重启自动恢复
限流 slowapi 按真实 IP,支持反向代理
向量库 pgvector RAG 检索,不支持时降级关键词匹配
鉴权 python-jose + bcrypt JWT(7 天有效期)+ 密码哈希
前端 Vue 3.4 + Vite 5 + Element Plus 2.14 含 ECharts 压测图表、marked Markdown 渲染
代理 Nginx(可选) 反向代理 + HTTPS + WebSocket 升级

接口说明

完整文档:http://localhost:4000/docs

类别 方法 路径 说明
认证 POST /api/v1/auth/login 登录,返回 JWT
认证 PUT /api/v1/auth/password 修改密码
用户 GET/POST/DELETE /api/v1/auth/users 用户管理(admin)
工作空间 POST /api/v1/workspaces 创建工作空间
工作空间 GET /api/v1/workspaces 列出我的工作空间
工作空间 POST/DELETE /api/v1/workspaces/{id}/members 邀请 / 移除成员
AI 用例 POST /api/v1/ai-cases/generate 生成用例
AI 用例 GET /api/v1/ai-cases/{id}/export-excel 导出 Excel
AI 用例 POST /api/v1/ai-cases/{id}/incremental-update 需求变更增量更新
AI 用例 GET /api/v1/ai-cases/{id}/traceability 需求追踪矩阵
WebUI POST /api/v1/parse/page 抓取页面元素(供场景规划使用)
WebUI POST /api/v1/cases/plan-scenes/{task_id} AI 场景规划(5 维度,持久化到任务;append=true 追加)
WebUI GET /api/v1/cases/scene-plan/{task_id} 读取持久化场景规划
WebUI PATCH /api/v1/cases/scene-plan/{task_id}/mark-recorded 标记场景已录制
WebUI GET /api/v1/cases/{case_id}/steps 获取用例 steps_json(步骤编辑器加载)
WebUI POST /api/v1/execute 执行测试(单浏览器)
WebUI POST /api/v1/execute/multi-browser 多浏览器并行执行
WebUI POST /api/v1/recording/start 启动录制(异步,立即返回 session_id)
WebUI POST /api/v1/recording/stop 停止录制,返回 ActionStep 列表
WebUI POST /api/v1/recording/save 将录制步骤保存为用例(含 AI 健壮化)
WebUI GET /api/v1/reports/{id}/pdf 导出 PDF
WebUI POST /api/v1/tasks/{id}/export/pytest 导出 pytest 脚本(zip)
接口测试 POST /api/v1/api-test/projects/{id}/execute 执行用例
接口测试 POST /api/v1/api-test/projects/{id}/cases/import 导入用例(Postman/HAR)
接口测试 POST /api/v1/api-test/projects/{id}/cases/{cid}/data-driven CSV 数据驱动执行
接口测试 GET /api/v1/api-test/reports/{id}/pdf 导出 PDF
Mock ANY /mock/{path} Mock 请求匹配(无需 JWT)
全局变量 GET/POST/PUT/DELETE /api/v1/global-vars 全局变量池管理
测试计划 PUT /api/v1/test-plans/{id}/webhook-token 生成 CI/CD 触发 token
测试计划 POST /api/v1/test-plans/{id}/trigger?token=xxx CI/CD 触发(无需 JWT)
测试计划 GET /api/v1/test-plans/reports/{id}/pdf 导出 PDF
渗透测试 GET /api/v1/pentest/tasks 任务列表(按工作空间)
渗透测试 POST /api/v1/pentest/tasks/{id}/run 触发执行
渗透测试 POST /api/v1/pentest/tasks/{id}/cancel 取消运行中的任务
渗透测试 GET /api/v1/pentest/tasks/{id}/pdf 导出 PDF 报告
健康检查 GET /api/v1/health 服务健康检查(无需鉴权)

WebSocket 频道(连接地址:ws://host:4000/ws?client_id=<频道>

client_id 说明
ai_gen AI 用例生成/优化/增量更新进度
cases_gen WebUI 用例生成进度
rec_{task_id} 录制步骤实时预览 + recording_ready / recording_failed 事件
api_gen_{project_id} 接口用例 AI 生成进度(按项目隔离)
api_exec_{project_id} 接口用例执行进度(按项目隔离)
api_load_{project_id} 压测实时指标 TPS / P95 / P99(按项目隔离)
plan_{id} 测试计划执行进度
pentest 渗透扫描实时进度

项目结构

ai_test_agent/
├── main.py                      # 入口:JWT 中间件、启动恢复、孤儿文件清理、调度器初始化
├── Dockerfile                   # 多阶段构建:前端 Node → 生产 Playwright Python
├── docker-compose.yml           # 四服务:db / redis / app / worker / nginx(后三个按 profile 启动)
├── nginx.conf                   # Nginx 反向代理(可选,--profile nginx 启动)
├── .env.docker                  # Docker 环境变量模板(生产配置,不提交 .env)
├── requirements.txt
├── api/
│   ├── auth.py                  # JWT + owner_filter + workspace 权限
│   ├── limiter.py               # slowapi 限流(支持反向代理 IP 识别)
│   ├── schemas.py               # Pydantic 请求/响应模型
│   ├── scheduler.py             # APScheduler 定时任务管理(测试计划 Cron)
│   ├── websocket.py             # WebSocket 连接处理
│   ├── websocket_manager.py     # 多频道广播管理器(心跳 + 工作空间隔离)
│   └── routes/
│       ├── __init__.py          # 路由聚合
│       ├── auth.py              # 鉴权、用户管理、健康检查
│       ├── workspaces.py        # 工作空间 CRUD + 成员管理
│       ├── webui.py             # WebUI 自动化(场景规划/录制/执行/报告/步骤健壮化)
│       ├── ai_cases.py          # AI 文档驱动用例(生成/增量更新/需求追踪/Excel导出)
│       ├── api_test.py          # 接口自动化(执行/压测/CSV数据驱动/WS隔离)
│       ├── global_vars.py       # 全局变量池
│       ├── test_plans.py        # 测试计划 + Cron 定时 + CI/CD webhook
│       ├── mock.py              # Mock 服务规则管理
│       └── pentest.py           # 渗透测试模块
├── agent/
│   ├── core.py                  # UITestAgent:任务编排,AgentState 按 task_id 隔离
│   └── langgraph_agent.py       # LangGraph Agent 初始化与编排
├── skills/
│   ├── action_runner.py         # ActionRunner:ActionStep 确定性执行引擎(AI selector 自修复)
│   ├── recorder.py              # 有头浏览器录制器(JS 事件注入 + 轮询 + 步骤补全)
│   ├── step_hardener.py         # 录制步骤健壮化(selector 评级/多候选/断言插入)
│   ├── test_executor.py         # TestExecutor:批量执行调度,task_id 状态隔离
│   ├── parallel_runner.py       # 多浏览器并行执行调度
│   ├── ai_case_generator.py     # 文档驱动用例生成(RAG + 并发控制 + JSON 修复 + 覆盖度优化)
│   ├── api_case_generator.py    # 接口用例 AI 生成(Swagger/代码/描述)
│   ├── api_executor.py          # 接口用例执行引擎
│   ├── api_load_tester.py       # 压力测试引擎
│   ├── csv_driver.py            # CSV 数据驱动解析
│   ├── import_parser.py         # Postman / HAR 导入解析
│   ├── param_resolver.py        # 参数化解析(全局变量池 / 内置函数 / 自定义脚本)
│   ├── pentest_engine.py        # 渗透测试扫描引擎(12 模块,AI 修复建议)
│   ├── rag.py                   # RAG 向量检索(pgvector / 关键词降级)
│   ├── prompt_loader.py         # YAML Prompt 加载器(懒加载 + LRU 缓存)
│   └── prompts/                 # LLM Prompt 配置(YAML,修改无需重启)
│       ├── ai_case_gen.yaml
│       ├── ui_case_gen.yaml     # 含 plan_scenes(场景规划5维度)
│       ├── api_case_gen.yaml
│       └── code_analyze.yaml
├── tools/
│   ├── action_schema.py         # ActionStep 数据结构定义(22 种 action 类型)
│   ├── browser.py               # BrowserPool(Semaphore=6,domcontentloaded策略)
│   ├── config.py                # 环境变量(pydantic-settings)
│   ├── database.py              # ORM 模型 + 自动迁移(含 source/scene_plan 新字段)
│   ├── document_parser.py       # 文档解析(PDF/Word/Excel/PPT/HTML)
│   ├── llm_client.py            # 统一 LLM 调用层(兼容 Anthropic / OpenAI 格式)
│   ├── pdf_exporter.py          # HTML → PDF(Playwright headless A4)
│   ├── alerter.py               # 钉钉/企微/飞书告警推送
│   └── logger.py                # 日志(按日滚动 + zip + 定时清理 + 告警 sink)
├── worker/
│   └── arq_worker.py            # ARQ Worker 配置(多 Worker 任务队列)
├── ui/src/                      # Vue 3 前端(Element Plus + ECharts + Pinia)
│   ├── views/
│   │   ├── AiCases.vue          # AI 用例生成(生成/优化/增量/追踪矩阵/Excel导出)
│   │   ├── Execution.vue        # WebUI 执行(AI场景规划/录制/健壮化/执行/多浏览器)
│   │   ├── Cases.vue            # WebUI 用例管理(来源标签/可视化步骤编辑器/备选Selector/场景覆盖/分页)
│   │   ├── Tasks.vue            # 任务管理
│   │   ├── Reports.vue          # 执行报告
│   │   ├── ApiTest.vue          # 接口测试(含CSV数据驱动/Postman导入)
│   │   ├── TestPlan.vue         # 测试计划(含 Cron 定时)
│   │   ├── Mock.vue             # Mock 服务
│   │   ├── Pentest.vue          # 渗透测试
│   │   ├── Home.vue             # 首页看板
│   │   ├── LLM.vue              # 大模型配置
│   │   └── Skills.vue           # 技能管理
│   └── api/index.js             # Axios 封装 + 401 拦截器
├── tests/                       # 单元测试
└── docs/
    └── webui-step-editor-guide.md  # WebUI 步骤编辑操作手册(action/selector/expected 详解)

截图


许可证

MIT License — 详见 LICENSE

暂无回复。
需要 登录 后方可回复, 如果你还没有账号请点击这里 注册