100 lines
2.9 KiB
Markdown
100 lines
2.9 KiB
Markdown
# 跳过控制器片尾倒计时功能测试指南
|
||
|
||
## 测试目标
|
||
|
||
验证新优化的片尾倒计时功能是否正确基于剩余时间工作
|
||
|
||
## 测试准备
|
||
|
||
1. 服务器已启动在 http://localhost:3001
|
||
2. SkipController 组件已优化完成
|
||
3. 支持两种模式:剩余时间模式(推荐)和绝对时间模式
|
||
|
||
## 测试步骤
|
||
|
||
### 测试 1:剩余时间模式(主要功能)
|
||
|
||
1. 打开任意视频播放页面
|
||
2. 点击跳过设置按钮(⚙️ 图标)
|
||
3. 在"片尾设置"部分:
|
||
- 选择"剩余时间(推荐)"模式
|
||
- 设置剩余时间为 "0:30"(30 秒)
|
||
- 启用"自动下一集"选项
|
||
4. 点击"保存批量设置"
|
||
5. 播放视频并快进到接近结束前 30 秒
|
||
6. 预期结果:
|
||
- 当剩余时间为 30 秒时开始倒计时
|
||
- 显示倒计时界面:"X 秒后自动播放下一集"
|
||
- 倒计时结束后自动跳转下一集
|
||
|
||
### 测试 2:绝对时间模式(兼容性)
|
||
|
||
1. 在跳过设置中:
|
||
- 选择"绝对时间"模式
|
||
- 设置开始时间为 "1:00"(1 分钟)
|
||
2. 点击"保存批量设置"
|
||
3. 从视频开始播放
|
||
4. 预期结果:
|
||
- 当播放到第 1 分钟时开始检测片尾
|
||
- 行为与旧版本一致
|
||
|
||
### 测试 3:界面交互测试
|
||
|
||
1. 验证模式切换时提示文本的变化:
|
||
- 剩余时间模式:显示"基于剩余时间倒计时(如:还剩 2 分钟时开始)"
|
||
- 绝对时间模式:显示"基于播放时间(如:播放到第 20 分钟时开始)"
|
||
2. 验证输入框 placeholder 的变化:
|
||
- 剩余时间模式:placeholder 显示"2:00"
|
||
- 绝对时间模式:placeholder 显示"20:00"
|
||
3. 验证标签文本的变化:
|
||
- 剩余时间模式:显示"剩余时间 (分:秒)"
|
||
- 绝对时间模式:显示"开始时间 (分:秒)"
|
||
|
||
## 验证要点
|
||
|
||
### 功能正确性
|
||
|
||
- [x] 剩余时间模式能正确计算实际开始时间(duration - remainingTime)
|
||
- [x] 绝对时间模式保持原有行为
|
||
- [x] 倒计时显示正确的剩余秒数
|
||
- [x] 倒计时结束后正确跳转下一集
|
||
|
||
### 用户体验
|
||
|
||
- [x] 界面文字清晰易懂
|
||
- [x] 默认使用推荐的剩余时间模式
|
||
- [x] 提供取消倒计时的选项
|
||
- [x] 配置保存后立即生效
|
||
|
||
### 技术实现
|
||
|
||
- [x] 无语法错误,编译成功
|
||
- [x] 保持向后兼容性
|
||
- [x] 正确的依赖管理
|
||
- [x] 合理的错误处理
|
||
|
||
## 测试结果记录
|
||
|
||
### 编译测试 ✅
|
||
|
||
- 组件无语法错误
|
||
- TypeScript 类型检查通过
|
||
- Next.js 开发服务器启动成功
|
||
|
||
### 功能测试 📋
|
||
|
||
需要手动测试:
|
||
|
||
1. 视频播放页面的跳过设置界面
|
||
2. 剩余时间模式的倒计时触发
|
||
3. 绝对时间模式的兼容性
|
||
4. 用户界面交互响应
|
||
|
||
## 相关文件
|
||
|
||
- 主要组件:`src/components/SkipController.tsx`
|
||
- 测试页面:播放页面 `/play`
|
||
- 功能文档:`SKIP_CONTROLLER_UPDATE.md`
|
||
|
||
这个测试指南确保新功能按预期工作,解决了用户提出的"片尾是倒计时,就是还有几分钟结束跳到下一集"的需求。
|