提交 561591ef authored 作者: 陈泽健's avatar 陈泽健

docs(ui-test): 更新交接文档-记录容器化部署完成

- 新增部署完成状态(4个commit记录)
- 新增容器化部署章节(架构图、修复问题、部署命令)
- 更新启动与验证章节(增加生产部署部分)
- 更新文档索引
Co-Authored-By: 's avatarClaude <noreply@anthropic.com>
上级 26d8d11e
# HANDOFF — UI自动化测试交接文档
> **生成时间**: 2026-07-23 13:10
> **生成时间**: 2026-07-27 09:50
> **当前分支**: `platform-auto-test`
> **最近提交**: `2b735bfb` feat(ui-test): 补充8个用例较少页面的深层交互用例(233→241)
> **状态**: ✅ P0模块筛选器修复完成 + P0补充用例验证通过 + 已推送
> **最近提交**: `26d8d11e` fix(deploy): 添加国内镜像源加速构建(清华PyPI + npmmirror)
> **状态**: ✅ 容器化部署完成 + 已提交推送
>
> **本次会话完成**:
> - ✅ P2: 编写PRD+计划文档,创建73个深层交互用例(202→275)
> - ✅ P0: 修复失败用例,7个代表性用例全部通过(通过率100%)
> - ✅ P0: 模块筛选器修复并验证生效(case_type=ui 返回16个模块)
> - ✅ P0: 补充8个用例较少页面的深层交互用例(233→241),4个代表性用例全部通过
> - ✅ Git提交并推送到远程仓库(commit: `5669460a` → `6b4c6322` → `2b735bfb`)
> - ✅ 编写 Linux 容器化部署方案文档
> - ✅ 创建 6 个部署文件(Dockerfile.backend / Dockerfile.frontend / Nginx / Compose / .env / deploy.sh)
> - ✅ 远程服务器 192.168.5.60 安装 Docker
> - ✅ 远程构建并启动服务(后端 Healthy + 前端 HTTP 200)
> - ✅ 已有服务(8088端口)不受影响
> - ✅ Git 提交并推送到远程仓库(commit: `68eccb4b` → `a3af3dba` → `2133790d` → `26d8d11e`)
---
......@@ -243,7 +244,78 @@ platform-auto-test/
---
## 四、待解决问题
## ✅ 容器化部署已完成(Linux Docker)
**目标服务器**:192.168.5.60 / Ubuntu 26.04 LTS / 用户 ubains
**已有服务**`/opt/troubleshoot/` → 端口 8088(不受影响)
**部署方案**`Docs/部署方案/Linux服务器部署方案.md`
**执行计划**`Docs/部署方案/Linux容器化部署_执行计划.md`
### 完成内容
| 文件 | 说明 |
|------|------|
| `deploy/Dockerfile.backend` | 后端镜像(Python 3.10-slim + Playwright + 清华镜像源) |
| `deploy/Dockerfile.frontend` | 前端多阶段构建(node:20 → nginx:alpine + npmmirror) |
| `deploy/nginx/default.conf` | Nginx 反向代理(API + WebSocket 代理 + 静态缓存) |
| `deploy/docker-compose.yml` | 服务编排(健康检查依赖 + 启动顺序控制) |
| `deploy/.env.example` | 环境变量模板 |
| `deploy/deploy.sh` | 一键部署脚本(含健康检查) |
| `deploy/daemon.json` | Docker 镜像加速器配置(docker.1ms.run) |
### 服务状态
| 服务 | 端口 | 状态 |
|------|------|------|
| 前端 (Nginx) | 80 | ✅ HTTP 200 |
| 后端 (API) | 8001 | ✅ Healthy |
| 已有故障排查平台 | 8088 | ✅ 不受影响 |
### 修复的问题
1. **`requests` 模块缺失**`requirements.txt` 补充 `requests==2.31.0`
2. **健康检查 `curl` 缺失**`Dockerfile.backend` 补充 `curl` 安装
3. **pip 下载超时(BrokenPipe)** → 改用清华 PyPI 镜像源 `pypi.tuna.tsinghua.edu.cn`
4. **npm 下载慢** → 改用 `npmmirror` 镜像源
5. **服务器 `git fetch` 只拉取 `develop` 分支** → 修改 `.git/config``fetch` 配置为 `+refs/heads/*:refs/remotes/origin/*`
6. **Docker hub 拉取超时** → 配置 `/etc/docker/daemon.json` 镜像加速器
### 部署命令
```bash
# 服务器上部署
cd ~/ubains-module-test
git pull origin platform-auto-test
cd deploy
docker compose build
docker compose up -d
# 运维
docker compose logs -f # 查看日志
docker compose restart backend # 重启后端
docker compose down # 停止服务
```
### 架构图
```
用户浏览器 → http://192.168.5.60
Nginx (:80) 容器内
├── / → 前端静态文件(SPA 路由回退 index.html)
├── /api/* → 反向代理 backend:8001
├── /api/executions/ws/* → WebSocket 代理(24h 超时)
└── *.js/.css → 7 天缓存
Backend (uvicorn :8001, 单 worker)
SQLite (/app/data/test_platform.db)
```
---
### 4.1 ⚠️ 批量执行验证需重新执行
......@@ -324,6 +396,8 @@ platform-auto-test/
## 七、启动与验证
### 本地开发(Windows)
```bash
# 后端(端口 8001)
cd backend
......@@ -341,6 +415,22 @@ npm run dev
- API 文档: http://localhost:8001/docs
- 被测系统: https://192.168.5.44 (admin@xty / Ubains@13579 / csba)
### 生产部署(Linux Docker)
```bash
# 服务器 192.168.5.60
ssh ubains@192.168.5.60
cd ~/ubains-module-test
git pull origin platform-auto-test
cd deploy
docker compose build
docker compose up -d
```
- 前端: http://192.168.5.60
- API 文档: http://192.168.5.60:8001/docs
- 已有故障排查平台: http://192.168.5.60:8088(不受影响)
### 快速验证新增用例
```bash
......@@ -357,6 +447,29 @@ PYTHONIOENCODING=utf-8 python scripts/create_supplementary_cases.py #
### 本次会话已提交
**本次部署相关提交**
**commit `68eccb4b`** - feat(deploy): 添加容器化部署配置文件(Docker/Nginx/Compose/部署脚本)
- deploy/Dockerfile.backend: 后端镜像(Python 3.10-slim + Playwright)
- deploy/Dockerfile.frontend: 前端多阶段构建(node:20 → nginx:alpine)
- deploy/nginx/default.conf: Nginx 反向代理(API + WebSocket)
- deploy/docker-compose.yml: 服务编排(健康检查 + 启动顺序)
- deploy/.env.example: 环境变量模板
- deploy/deploy.sh: 一键部署脚本
**commit `a3af3dba`** - fix(deploy): 后端 requirements.txt 补充 requests 依赖
- 容器化部署时发现缺少 requests 库导致后端启动失败
**commit `2133790d`** - fix(deploy): Dockerfile 补充 curl 依赖(健康检查需要)
- 后端容器实际运行正常,但 healthcheck 因缺少 curl 而失败
**commit `26d8d11e`** - fix(deploy): 添加国内镜像源加速构建(清华PyPI + npmmirror)
- 后端 pip 使用清华镜像避免 BrokenPipe 超时
- 前端 npm 使用 npmmirror 加速依赖下载
- 增加 pip 重试次数和超时配置
### 历史提交
**commit `5669460a`** - feat(ui-test): 新增73个深层交互用例+模块筛选器case_type过滤
- 后端 `module_service.py` / `routers/modules.py` 新增 `case_type` 参数
- 前端 `api/modules.ts` / `Cases.vue` / `Recorder.vue` 传递 `case_type='ui'`
......@@ -410,6 +523,13 @@ PYTHONIOENCODING=utf-8 python scripts/create_supplementary_cases.py #
| 补充用例创建脚本 | `backend/scripts/create_supplementary_cases.py` |
| 安全测试交接文档 | `HANDOFF_安全测试.md` |
| UI自动化交接文档 | `HANDOFF_UI自动化.md`(本文档) |
| Linux服务器部署方案 | `Docs/部署方案/Linux服务器部署方案.md` |
| 容器化部署执行计划 | `Docs/部署方案/Linux容器化部署_执行计划.md` |
| 后端 Dockerfile | `deploy/Dockerfile.backend` |
| 前端 Dockerfile | `deploy/Dockerfile.frontend` |
| Nginx 配置 | `deploy/nginx/default.conf` |
| Docker Compose 编排 | `deploy/docker-compose.yml` |
| 部署脚本 | `deploy/deploy.sh` |
---
......
Markdown 格式
0%
您添加了 0 到此讨论。请谨慎行事。
请先完成此评论的编辑!
注册 或者 后发表评论