Files
Mdeical_Sur_Report/工程分析/测试方案-2026-04-16-18-51-06.md

91 lines
5.3 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
# 测试方案 — 2026-04-16-18-51-06
## 测试目标
验证在 `/report-editor` 页面离开并重新返回后,**视频分析相关的所有图片数据(自动关键帧、手动截图、拖拽到 placeholder 的截图)能够正确恢复**,且不影响报告基本信息和其他页面功能。
## 测试环境
- 浏览器Chrome / Edge推荐
- 前置条件已登录系统localStorage 中有当前用户信息
- 测试文件:准备一个时长超过 30 秒的 MP4 视频文件(用于自动关键帧摘取)
## 测试用例设计
### 用例 1新建报告 — 自动关键帧摘取后路由切换
| 步骤 | 操作 | 预期结果 |
|------|------|---------|
| 1.1 | 进入 `/report-editor`(不带 `?id` | 页面正常加载,显示默认模板内容 |
| 1.2 | 填写患者姓名、住院号等基本信息 | 基本信息输入正常 |
| 1.3 | 切换到「视频分析」页签,上传测试视频 | 视频上传成功,视频列表中显示文件名 |
| 1.4 | 点击「自动关键帧摘取」 | 右侧生成多张自动关键帧缩略图 |
| 1.5 | 点击浏览器地址栏,手动跳转至 `/report-manage` | 页面跳转成功 |
| 1.6 | 再次在地址栏输入 `/report-editor` 返回 | **右侧「视频分析」中自动关键帧缩略图全部保留** |
| 1.7 | 点击「保存草稿」,再跳转离开并返回 | 自动关键帧缩略图仍然保留 |
### 用例 2新建报告 — 手动截图后路由切换
| 步骤 | 操作 | 预期结果 |
|------|------|---------|
| 2.1 | 在新建报告页面上传视频并播放 | 视频正常播放 |
| 2.2 | 拖动进度条到某一时刻,点击「手动截图」 | 右侧生成一张手动截图缩略图 |
| 2.3 | 再次截取 2-3 张不同时间点的截图 | 所有手动截图均显示在右侧列表 |
| 2.4 | 跳转至 `/report-manage`,再返回 `/report-editor` | **所有手动截图缩略图全部保留** |
| 2.5 | 点击「保存草稿」后再次离开并返回 | 手动截图仍然保留 |
### 用例 3新建/编辑报告 — 拖拽截图到 image-placeholder 后路由切换
| 步骤 | 操作 | 预期结果 |
|------|------|---------|
| 3.1 | 在编辑器中插入一个 `image-placeholder` | placeholder 正常显示在编辑器中 |
| 3.2 | 从右侧「视频分析」中拖拽一张自动关键帧到 placeholder | placeholder 中显示该图片,且带有删除按钮 |
| 3.3 | 再插入一个 placeholder拖拽一张手动截图到其中 | 第二张 placeholder 也正确显示图片 |
| 3.4 | 跳转至 `/report-manage`,再返回 `/report-editor` | **编辑器中两个 placeholder 内的图片均保留可见** |
| 3.5 | 查看右侧「视频分析」面板 | 被拖拽的原始帧/截图缩略图也仍然保留在列表中 |
| 3.6 | 点击「保存草稿」后再次离开并返回 | 编辑器和右侧面板的图片均保留 |
### 用例 4编辑已有报告 — 保存后数据完整恢复
| 步骤 | 操作 | 预期结果 |
|------|------|---------|
| 4.1 | 对任意一份已有报告点击「编辑」,进入 `/report-editor?id=xxx` | 报告内容和基本信息正常加载 |
| 4.2 | 上传视频、自动摘取关键帧、手动截图、拖拽一张到 placeholder | 所有操作正常生效 |
| 4.3 | 点击「保存草稿」 | 提示保存成功 |
| 4.4 | 跳转至 `/report-manage`,找到该报告,再次点击「编辑」 | 进入 `/report-editor?id=xxx` |
| 4.5 | 检查编辑器、基本信息、视频分析面板 | **所有数据和图片完整恢复,无丢失** |
### 用例 5边界场景 — 多次快速路由切换
| 步骤 | 操作 | 预期结果 |
|------|------|---------|
| 5.1 | 在 `/report-editor` 中完成视频上传、截图、拖拽 | 数据正常 |
| 5.2 | 快速连续切换:/report-editor → /report-manage → /report-editor → /report-manage → /report-editor | **最终返回时,所有视频分析数据仍然完整保留** |
| 5.3 | 检查 localStorage 中 `reportEditorDraft_{username}` | draft 中 `videos``capturedFrames` 均非空数组 |
### 用例 6回归测试 — 模板切换不污染数据
| 步骤 | 操作 | 预期结果 |
|------|------|---------|
| 6.1 | 在 `/report-editor` 中上传视频并截取若干帧 | 数据正常 |
| 6.2 | 切换模板(顶部模板选择下拉框) | 编辑器内容按模板重置,报告基本信息清空 |
| 6.3 | 检查视频分析面板 | 根据现有逻辑,模板切换会清空 videos 和 capturedFrames此行为保持不变 |
| 6.4 | 若切换模板后不希望丢失视频数据,可后续作为优化项提出 | — |
## 验收标准
- [ ] 用例 1自动关键帧在路由切换后 100% 保留;
- [ ] 用例 2手动截图在路由切换后 100% 保留;
- [ ] 用例 3拖拽到 placeholder 的图片在路由切换后 100% 保留;
- [ ] 用例 4编辑已有报告保存后再次编辑数据完整无丢失
- [ ] 用例 5多次快速切换路由后数据不丢失、不异常
- [ ] 用例 6模板切换的现有行为未被意外改变。
## 测试方式
由于本项目目前无自动化测试框架,所有测试用例均通过 **手工浏览器验证** 执行。测试人员按上表逐步操作,观察实际结果是否与预期一致。
---
**⚠️ 请审核以上测试方案,确认无误后回复「确认」或提出修改意见,我将进入最终执行阶段(修改代码 + 更新经验记录 + Gitea 备份)。**