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

90 lines
5.5 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-19-06-18
## 测试目标
1. 验证路由切换后,报告编辑器内容、基本信息、视频分析数据(自动关键帧、手动截图、拖拽图片)均**完整保留不丢失**。
2. 验证开启「自动帧插入」后,关键帧在自动摘取过程中能够**实时逐张显示**,并在达到延迟时间后**逐张插入**到 `image-placeholder` 中,而不是全部处理完成后一次性批量出现。
## 测试环境
- 浏览器Chrome / Edge推荐
- 前置条件已登录系统localStorage 中有当前用户信息
- 测试文件:准备一个时长超过 60 秒的 MP4 视频文件
- 系统设置:在「系统设置」中开启「自动帧插入」,配置插入延迟为 1~2 秒,并勾选若干自动插入的帧索引(如第 0、3、5 帧)
## 测试用例设计
### 用例 1新建报告 — 路由切换后数据完整保留
| 步骤 | 操作 | 预期结果 |
|------|------|---------|
| 1.1 | 进入 `/report-editor`(不带 `?id` | 页面正常加载默认模板 |
| 1.2 | 填写患者姓名、住院号、科室等基本信息 | 输入内容正常保留在表单中 |
| 1.3 | 在编辑器中输入一段自定义文字 | 编辑器内容正常显示 |
| 1.4 | 切换到「视频分析」页签,上传测试视频 | 视频出现在右侧列表 |
| 1.5 | 点击「自动关键帧摘取」 | 右侧出现多张自动关键帧缩略图 |
| 1.6 | 手动截取 2 张截图 | 手动截图出现在右侧列表 |
| 1.7 | 拖拽 1 张自动关键帧到编辑器的 `image-placeholder` | placeholder 正确显示图片 |
| 1.8 | 在地址栏手动跳转到 `/report-manage` | 页面正常跳转 |
| 1.9 | 再次输入 `/report-editor` 返回新建报告页面 | **编辑器内容、基本信息、自动关键帧、手动截图、placeholder 中的图片均完整保留** |
| 1.10 | 点击「保存草稿」,再次离开并返回 | 所有数据仍然完整 |
### 用例 2编辑已有报告 — 保存后重新编辑数据完整
| 步骤 | 操作 | 预期结果 |
|------|------|---------|
| 2.1 | 进入 `/report-manage`,对已有报告点击「编辑」 | `/report-editor?id=xxx` 正常加载 |
| 2.2 | 修改患者姓名,上传视频,自动摘取关键帧 | 修改和视频分析数据正常显示 |
| 2.3 | 点击「保存草稿」 | 提示保存成功 |
| 2.4 | 跳转离开后再返回 `/report-editor?id=xxx` | **修改后的基本信息、报告内容、视频分析数据完整恢复** |
### 用例 3边界场景 — 多次快速路由切换
| 步骤 | 操作 | 预期结果 |
|------|------|---------|
| 3.1 | 在 `/report-editor` 中完成用例 1 的全部操作 | 数据正常 |
| 3.2 | 快速连续切换:/report-editor → /report-manage → /report-editor → /report-manage → /report-editor | 最终返回时,**没有任何数据丢失或变空** |
| 3.3 | 检查 localStorage 中 `reportEditorDraft_{username}` | draft 中 `reportData``videos``capturedFrames` 均非空 |
### 用例 4自动帧插入 — 关键帧实时逐张显示
| 步骤 | 操作 | 预期结果 |
|------|------|---------|
| 4.1 | 进入系统设置,开启「自动帧插入」,设置延迟 1 秒,勾选索引 0、2、4 为自动插入 | 设置保存成功 |
| 4.2 | 进入 `/report-editor`,上传视频,确保编辑器中有至少 3 个空的 `image-placeholder` | placeholder 就位 |
| 4.3 | 点击「自动关键帧摘取」 | **右侧关键帧列表中,每隔一小段时间(视频 seek 时间)就有新的一张缩略图出现**,而不是等全部结束后一次性全部出现 |
| 4.4 | 观察 placeholder | 当第 0 帧被摘取后,等待约 1 秒,第一个 placeholder 被填充;第 2 帧摘取后约 1 秒,第二个 placeholder 被填充;以此类推,**逐张插入** |
### 用例 5自动帧插入 — 无延迟配置的即时插入
| 步骤 | 操作 | 预期结果 |
|------|------|---------|
| 5.1 | 在系统设置中将自动插入延迟设为 0 秒 | 设置保存成功 |
| 5.2 | 进入 `/report-editor`,上传视频,点击「自动关键帧摘取」 | 每摘取到一张指定索引的帧,**几乎立即**填充到下一个空的 placeholder 中 |
| 5.3 | 观察右侧关键帧列表 | 同样能看到帧逐张实时出现 |
### 用例 6回归测试 — 模板切换行为不变
| 步骤 | 操作 | 预期结果 |
|------|------|---------|
| 6.1 | 在 `/report-editor` 中上传视频、截取若干帧 | 数据正常 |
| 6.2 | 切换模板 | 编辑器内容按模板重置,基本信息清空,视频分析根据现有逻辑可能被清空 |
| 6.3 | 离开并返回 | 模板切换后的状态保持一致,无异常崩溃 |
## 验收标准
- [ ] 用例 1新建报告路由切换后编辑器内容、基本信息、视频分析数据 100% 保留;
- [ ] 用例 2编辑已有报告保存后再次编辑数据完整无丢失
- [ ] 用例 3多次快速切换路由后数据不丢失、不异常变空
- [ ] 用例 4开启自动帧插入且有延迟时关键帧实时逐张显示、逐张插入 placeholder
- [ ] 用例 5延迟为 0 时,指定帧摘取后立即插入 placeholder
- [ ] 用例 6模板切换的现有行为未被意外改变页面无崩溃。
## 测试方式
由于本项目目前无自动化测试框架,所有测试用例均通过 **手工浏览器验证** 执行。测试人员按上表逐步操作,观察实际结果是否与预期一致。
---
**⚠️ 请审核以上测试方案,确认无误后回复「确认」或提出修改意见,我将进入最终执行阶段(修改代码 + 更新经验记录 + Gitea 备份)。**