内容概览

内容简介

TestPilot 是一套 前后端分离 的 Web 可视化测试平台

TestPilot

TestPilot 是前后端分离的 Web 可视化测试平台,支持接口、Web UI、App、小程序四类测试用例的可视化编写与执行,同时提供用例管理、执行记录、测试报告、缺陷管理、环境配置、项目权限、即时通讯、AI 辅助等核心能力,开箱即用且支持团队协作。

二、快速上手(3步跑通)

1. 环境准备

  • 安装 Python 3.11+(勾选「Add Python to PATH」)、Node.js 18+ LTS(自动带 npm);
  • 验证安装:
    Shell
    # 检查Pythonpython --version# 检查Node/npmnode --version && npm --version
  • 可选依赖(按需装):
    • Web UI 测试:安装 Chrome/Edge 浏览器;
    • App 测试:本机启动 Appium Server 并连接真机/模拟器。

2. 安装依赖

Shell
# 后端依赖(进入backend目录)cd backendpip install -r requirements.txt# Web UI测试需额外执行# 双击 backend/安装Web引擎依赖.bat
# 前端依赖(新开终端,进入frontend目录)cd frontendnpm install

3. 启动服务

方式1:Windows 一键启动

双击项目根目录 一键启动.bat,自动启动后端(8001)+ 前端(3000),勿关闭弹出的终端窗口。

方式2:手动启动(全系统通用)

Shell
# 后端(终端1)cd backendpython -m uvicorn app.main:app --reload --port 8001
# 前端(终端2)cd frontendnpx vite --port 3000

4. 访问使用

  • 浏览器打开:http://localhost:3000必用前端地址,勿直接访问8001);
  • 默认账号:admin / admin123,登录后立即修改密码;
  • 核心流程:新建项目 → 配置环境 → 编写用例 → 执行 → 查看报告/缺陷。

三、核心功能

模块核心能力
用例管理四类测试用例可视化编写、分组/筛选、AI 生成用例(支持接口/Web/App/小程序)
执行与日志单条/批量执行、执行记录追溯、日志筛选/下载、AI 分析执行失败原因
测试报告多维度统计、Allure 报告、AI 分析报告、支持导出
缺陷管理手动/AI 生成缺陷、指派流转、Jira 集成、操作日志
环境配置多环境隔离、变量/公共请求头({{变量名}} 引用)
团队协作项目权限、用户管理、即时通讯(私聊/群聊/@提及/文件分享)
AI 辅助AI 答疑、日志/报告分析、生成用例/缺陷,支持多厂商模型(OpenAI/通义等)

四、部署方案

1. 本地/局域网部署(临时使用)

  • 后端启动时监听局域网:uvicorn app.main:app --host 0.0.0.0 --port 8001
  • 前端启动时监听局域网:npx vite --port 3000 --host 0.0.0.0
  • 同事访问:http://你的局域网IP:3000(放行 3000/8001 端口)。

2. 服务器部署(生产/团队使用)

核心思路

前端打包为静态文件(npm run build),Nginx 托管并反向代理 /api//ws 到后端,后端以 systemd 常驻运行。

关键步骤(Linux 示例)

Shell
# 1. 构建前端(生成dist目录)cd frontend && npm run build
# 2. 后端做成系统服务(开机自启)sudo nano /etc/systemd/system/testpilot.service# 粘贴以下内容(替换项目路径)[Unit]Description=TestPilot BackendAfter=network.target[Service]Type=simpleWorkingDirectory=/opt/testtool/backendExecStart=/opt/testtool/backend/venv/bin/uvicorn app.main:app --host 0.0.0.0 --port 8001Restart=always[Install]WantedBy=multi-user.target
# 3. 启用服务sudo systemctl daemon-reload && sudo systemctl enable --now testpilot
# 4. Nginx配置(反向代理+托管前端)sudo nano /etc/nginx/sites-available/testpilot# 核心配置(替换域名/IP、dist路径)server {    listen 80;    server_name 你的域名/服务器IP;        # 前端静态文件    location / {        root /var/www/testpilot/dist;        try_files $uri $uri/ /index.html;    }    # 后端API代理    location /api/ { proxy_pass http://127.0.0.1:8001; }    # WebSocket(实时通知)    location /ws {        proxy_pass http://127.0.0.1:8001;        proxy_http_version 1.1;        proxy_set_header Upgrade $http_upgrade;        proxy_set_header Connection "upgrade";    }}
# 5. 启用Nginx配置sudo ln -sf /etc/nginx/sites-available/testpilot /etc/nginx/sites-enabled/sudo nginx -t && sudo systemctl reload nginx

3. Docker 一键部署(推荐)

Shell
# 设置JWT密钥(生产必做)export JWT_SECRET=$(python3 -c "import secrets; print(secrets.token_urlsafe(48))")# 构建并启动docker compose up -d --build# 访问:http://localhost

五、常见问题

  1. 启动闪退/访问失败:检查 Python/Node 是否加入 PATH,确保 3000/8001 端口未被占用(可双击 backend/释放8001端口.bat);
  2. Web UI 驱动报错:清除驱动缓存(双击 backend/清除浏览器驱动缓存.bat),或手动指定驱动路径(在 backend 目录新建 .edge_driver_path/.chrome_driver_path,写入驱动完整路径);
  3. AI 功能提示未配置:管理员登录 → 系统设置 → AI 模型,填写提供商/模型名称/API Key(可选「模拟演示」免 Key);
  4. 服务器访问不通:检查安全组放行 80/443 端口,确认 Nginx/TestPilot 服务正常运行。

六、技术栈

端侧核心技术
前端React 18 + TypeScript + AntD 5 + Vite
后端Python 3.11 + FastAPI + SQLAlchemy 2.0 + Uvicorn
执行引擎接口:httpx;Web UI:Selenium;App:Appium
数据库默认 SQLite(单文件),支持 MySQL/PostgreSQL

七、开源说明

  • 协议:MIT 开源(可自由使用/修改/分发);
  • 核心扩展:支持新增测试类型、切换数据库、调整限流规则、集成自定义 AI 模型。
正在读取获取状态
知归编辑部

更新日期:2026.03.03。版本、链接和使用说明以当前页面为准。