CLAUDE.md: - 新增「文档管理」章节,明确文档分类和更新策略 - 核心原则:不创建需要手工同步的文档 删除过时文档: - PROJECT_STRUCTURE.md(代码即结构) - docs_index.md(直接浏览目录) 归档历史设计文档: - PRD/TECHSPEC/IXSPEC 移入 docs/archive/ 统一应用名称: - 所有文档中 "Live Photo Maker" → "Live Photo Studio" 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
6.3 KiB
6.3 KiB
Live Photo Studio 测试文档
测试矩阵
设备覆盖
| 设备类型 | 系统版本 | 测试优先级 |
|---|---|---|
| iPhone (任意机型) | iOS 18+ | P0 |
| iPhone (任意机型) | iOS 17.x | P0 |
| iPhone (任意机型) | iOS 16.x | P1 |
| iPad (任意机型) | iPadOS 18+ | P1 |
| iPad (任意机型) | iPadOS 17.x | P1 |
素材覆盖
| 素材类型 | 编码 | 帧率 | 方向 | HDR | 测试优先级 |
|---|---|---|---|---|---|
| 标准视频 | H.264 | 30fps | 竖屏 | SDR | P0 |
| 标准视频 | H.264 | 60fps | 竖屏 | SDR | P0 |
| HEVC 视频 | HEVC | 30fps | 竖屏 | SDR | P0 |
| HEVC 视频 | HEVC | 60fps | 竖屏 | SDR | P1 |
| 横屏视频 | H.264 | 30fps | 横屏 | SDR | P1 |
| HDR 视频 | HEVC | 30fps | 竖屏 | HDR | P1 |
| 4K 视频 | H.264/HEVC | 30fps | 竖屏 | SDR | P2 |
测试用例
TC001: 基础导入流程
前置条件: 相册中有可用视频
步骤:
- 打开 App,进入首页
- 点击「选择视频」按钮
- 从相册选择一个 2-5 秒的视频
- 等待视频加载完成
预期结果:
- 视频加载成功,跳转到编辑页
- 编辑页显示视频预览
- 时长滑块显示正确的时间范围
优先级: P0
TC002: 编辑页参数调整
前置条件: 已导入视频,处于编辑页
步骤:
- 调整时长滑块,选择 1-1.5 秒区间
- 切换不同的比例模板(锁屏/全屏/4:3)
- 使用双指手势缩放和拖动预览区域
- 开启/关闭兼容模式
预期结果:
- 时长滑块可正常拖动,显示选中时长
- 切换比例后预览区域实时更新
- 手势操作流畅,裁剪区域可调整
- 兼容模式开关状态正确显示
优先级: P0
TC003: 生成 Live Photo
前置条件: 已完成编辑参数设置
步骤:
- 点击「生成 Live Photo」按钮
- 观察进度页面的阶段变化
- 等待生成完成
预期结果:
- 显示进度条和阶段文案
- 阶段依次为:normalize → extractKeyFrame → writePhotoMetadata → writeVideoMetadata → saveToAlbum → validate
- 生成成功后跳转到结果页
- 结果页显示「Live Photo 已保存」
优先级: P0
TC004: 相册验证
前置条件: Live Photo 已生成并保存
步骤:
- 打开系统「照片」App
- 找到刚保存的照片
- 查看照片详情,确认有 LIVE 标识
- 长按照片,触发动画播放
预期结果:
- 照片左上角显示「LIVE」标识
- 长按可播放动画效果
- 动画时长约 0.9 秒
优先级: P0
TC005: 设置为壁纸(iOS 17+)
前置条件: Live Photo 已保存,设备为 iOS 17+
步骤:
- 在结果页点击「查看壁纸设置指南」
- 按引导打开照片 App
- 选择 Live Photo → 分享 → 用作壁纸
- 确认 Live Photo 图标已开启(高亮)
- 完成设置,锁屏长按测试
预期结果:
- 引导页正确显示 iOS 17+ 的步骤
- 壁纸设置成功
- 锁屏长按可触发动画
优先级: P0
TC006: 兼容模式测试
前置条件: 有 4K/HDR/HEVC 视频素材
步骤:
- 导入高规格视频
- 查看自动诊断建议
- 开启兼容模式
- 生成 Live Photo
预期结果:
- 显示「建议开启兼容模式」提示
- 兼容模式下参数自动调整为 720p/30fps/H.264/SDR
- 生成成功,文件体积较小
优先级: P1
TC007: 取消生成
前置条件: 正在生成 Live Photo
步骤:
- 在进度页点击「取消」按钮
- 确认取消操作
预期结果:
- 生成任务立即停止
- 返回编辑页或首页
- 缓存目录中的临时文件已清理
优先级: P1
TC008: 最近作品
前置条件: 已成功生成至少一个 Live Photo
步骤:
- 返回首页
- 查看「最近作品」区域
- 点击最近作品卡片
预期结果:
- 显示最近生成的作品缩略图
- 显示比例和时间信息
- 点击可进入壁纸引导页
优先级: P1
TC009: 设置页功能
前置条件: 无
步骤:
- 点击首页右上角设置图标
- 查看权限状态
- 点击「清理缓存」
- 点击「导出诊断报告」
预期结果:
- 权限状态正确显示(已授权/未授权)
- 缓存清理后显示「0 KB」
- 诊断报告生成并弹出分享面板
优先级: P2
TC010: iOS 16 系统限制提示
前置条件: 设备为 iOS 16
步骤:
- 完成 Live Photo 生成
- 进入壁纸引导页
预期结果:
- 显示「iOS 17+ 才支持锁屏动态效果」警告
- 引导步骤说明 iOS 16 的限制
- FAQ 包含相关问题解答
优先级: P1
TC011: AI 超分辨率增强
前置条件: 设备支持 AI 增强(iOS 17+,≥4GB RAM)
步骤:
- 导入视频,进入编辑页
- 开启「AI 超分辨率」开关
- 确认显示「分辨率提升约 2 倍」等信息
- 点击生成 Live Photo
- 观察进度页显示「AI 增强封面」阶段
预期结果:
- AI 增强阶段耗时约 2-3 秒
- 生成成功,封面图分辨率提升
- 无崩溃或异常
优先级: P1
TC012: AI 增强不可用设备
前置条件: 设备不支持 AI 增强(iOS 16 或 <4GB RAM)
步骤:
- 进入编辑页
- 查看 AI 超分辨率区域
预期结果:
- 开关置灰不可点击
- 显示「当前设备不支持 AI 增强」提示
优先级: P2
异常场景
TC013: 权限被拒绝
步骤: 在系统设置中拒绝相册权限后尝试保存
预期结果: 显示错误提示,引导用户前往设置授权
TC014: 视频时长不足
步骤: 导入时长小于 0.5 秒的视频
预期结果: 显示「视频时长不足」错误提示
TC015: 磁盘空间不足
步骤: 在磁盘空间极低时尝试生成
预期结果: 显示存储空间不足错误,建议清理缓存
验收标准
- P0 用例全部通过(TC001-TC005)
- P1 用例通过率 ≥ 90%(TC006-TC011)
- 无崩溃
- 生成成功率 ≥ 95%(标准素材)
- 相册识别率 100%
- AI 增强成功率 ≥ 90%(支持设备)
测试用例统计
| 优先级 | 用例数 | 说明 |
|---|---|---|
| P0 | 5 | TC001-TC005,核心流程 |
| P1 | 6 | TC006-TC011,进阶功能 |
| P2 | 4 | TC012, TC013-TC015,边界场景 |
| 总计 | 15 |