61 lines
3.6 KiB
Markdown
61 lines
3.6 KiB
Markdown
# EveryPublish 网页端测试报告(检查点①)
|
||
|
||
> 日期:2026-08-20 · 范围:阶段一网页端 D1-D7 交付 · 结论:**核心链路全部通过,可进入用户验收**
|
||
|
||
## 一、测试概况
|
||
|
||
| 项 | 结果 |
|
||
|---|---|
|
||
| Go 单元+集成测试 | ✅ 全绿(auth 4 项、task 状态机 4 项、API 集成 4 场景、WSS 全链路 1 场景) |
|
||
| TypeScript 类型检查 | ✅ `tsc --noEmit` 0 错误 |
|
||
| 前端生产构建 | ✅ `pnpm build` 成功(仅 chunk 体积提示,非错误) |
|
||
| 手动链路测试 | ✅ 24 项断言 24 通过(含 3 项环境/断言修正后复测通过) |
|
||
| 断线重连兜底 | ✅ 下线不丢任务、重连 1 秒内自动补发 |
|
||
|
||
## 二、六条核心链路测试结果
|
||
|
||
| # | 链路 | 关键断言 | 结果 |
|
||
|---|---|---|---|
|
||
| 1 | 注册登录 | 注册 200 / 重复邮箱 409 / 错误密码 401 / 刷新轮换后旧 refresh 401 / me 查询 | ✅ |
|
||
| 2 | 工作空间 | 创建 / 改名 | ✅ |
|
||
| 3 | 素材直传 | 上传 sha256 / 同文件去重 dedup=true / 直链一次 200 二次 404(一次性) | ✅ |
|
||
| 4 | 账号绑定 | 新增→bind→challenge 推送→扫码→active(绑定到设备) | ✅ |
|
||
| 5 | 任务全生命周期 | 创建→提交→审核→下发→执行→success;驳回→rejected→重提;取消 | ✅ |
|
||
| 6 | 成员协作 | 邀请→加入→角色 operator 生效 | ✅ |
|
||
| 7 | 审计 | auth.login / task.create 等动作埋点落库、按动作筛选 | ✅ |
|
||
| 8 | 权限 | 普通用户访问 admin API = 403;admin 账号 = 200 | ✅ |
|
||
|
||
## 三、发现的问题与处理
|
||
|
||
| 问题 | 类型 | 处理 |
|
||
|---|---|---|
|
||
| 假执行器未绑定到测试工作空间(导致绑定/下发无设备) | 测试环境 | 每工作空间独立假执行器实例;非代码缺陷 |
|
||
| 审计断言用 `=1` 而实际多记录 | 测试脚本 | 修正断言为存在性;审计功能正常 |
|
||
| 下发器 ack 竞态(先推后写库) | 代码缺陷 | 已修复:先落库 dispatched 再推送(D4 已改) |
|
||
| 服务器异常退出残留 online 状态 | 代码缺陷 | 已修复:启动自愈重置 offline |
|
||
| 8080 被 nginx 占用 | 环境 | 后端改用 :8090 |
|
||
|
||
## 四、用户验收清单(请您逐项验证)
|
||
|
||
1. 打开 http://127.0.0.1:3003/login/index 注册新账号并登录(应进入工作台)。
|
||
2. 工作台:看到 Agent 设备(在线/离线)与最近任务实时状态。
|
||
3. 账号管理:添加账号 → 点「绑定」→ 弹窗等待 → 客户端扫码后自动变「已绑定」(无客户端时可跳过,观察「绑定中」状态)。
|
||
4. 素材库:上传视频 → 列表出现,重复上传同一文件应提示去重。
|
||
5. 发布管理 → 新建发布:四步向导选择素材/账号/填内容 → 创建草稿。
|
||
6. 任务列表:草稿「提交审核」→ 审核中心「通过」→ 状态变绿「发布成功」(需在线客户端)。
|
||
7. 成员管理:邀请一个邮箱 → 生成链接 → 复制。
|
||
8. 挑战中心 / 通知 / 审计:数据可查看、操作可用。
|
||
9. 设置 → Agent 设备:可吊销设备(吊销后设备下线)。
|
||
10. 退出登录 → 重新登录(令牌刷新正常)。
|
||
|
||
## 五、环境与运行状态
|
||
|
||
- 后端 Go 服务:http://127.0.0.1:8090(`/health` 200)
|
||
- 前端 dev:http://127.0.0.1:3003(生产构建已通过,`apps/web/dist/`)
|
||
- MySQL(Docker everypublish-mysql)+ Redis(本机)运行中
|
||
- 假执行器:demo 工作空间 + tester1 工作空间各一台(模拟客户端)
|
||
|
||
## 六、结论
|
||
|
||
网页端阶段一交付满足《docs/delivery-plan.md》§7 第 1-5 项验收。**建议进入用户验收;确认通过后开始阶段二(Windows 客户端 D8-D11)。**
|