# 跳过控制器片尾倒计时功能测试指南 ## 测试目标 验证新优化的片尾倒计时功能是否正确基于剩余时间工作 ## 测试准备 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` 这个测试指南确保新功能按预期工作,解决了用户提出的"片尾是倒计时,就是还有几分钟结束跳到下一集"的需求。