|
@@ -0,0 +1,225 @@
|
|
|
|
|
+{
|
|
|
|
|
+ "project_name": "AI有声书播放器优化",
|
|
|
|
|
+ "base_config": {
|
|
|
|
|
+ "backend_port": 3000,
|
|
|
|
|
+ "frontend_port": 5173,
|
|
|
|
|
+ "db_host": "localhost",
|
|
|
|
|
+ "db_port": 3306,
|
|
|
|
|
+ "auth_enabled": false
|
|
|
|
|
+ },
|
|
|
|
|
+ "features": [
|
|
|
|
|
+ {
|
|
|
|
|
+ "id": 1,
|
|
|
|
|
+ "description": "播放器 - 封面旋转动画",
|
|
|
|
|
+ "backend_test_steps": [],
|
|
|
|
|
+ "frontend_test_steps": [
|
|
|
|
|
+ "1. 打开播放器页面",
|
|
|
|
|
+ "2. 验证封面显示在中央",
|
|
|
|
|
+ "3. 点击播放按钮",
|
|
|
|
|
+ "4. 验证封面向右旋转(播放时)",
|
|
|
|
|
+ "5. 点击暂停按钮",
|
|
|
|
|
+ "6. 验证封面停止旋转(暂停时)"
|
|
|
|
|
+ ],
|
|
|
|
|
+ "status": "done",
|
|
|
|
|
+ "passes": true
|
|
|
|
|
+ },
|
|
|
|
|
+ {
|
|
|
|
|
+ "id": 2,
|
|
|
|
|
+ "description": "播放器 - 播放控制(上一首/下一首/播放暂停)",
|
|
|
|
|
+ "backend_test_steps": [],
|
|
|
|
|
+ "frontend_test_steps": [
|
|
|
|
|
+ "1. 打开有多个音频的专辑",
|
|
|
|
|
+ "2. 点击播放按钮,验证开始播放",
|
|
|
|
|
+ "3. 点击下一首按钮,验证切换到下一首",
|
|
|
|
|
+ "4. 点击上一首按钮,验证切换到上一首",
|
|
|
|
|
+ "5. 验证播放器状态正确更新"
|
|
|
|
|
+ ],
|
|
|
|
|
+ "status": "init",
|
|
|
|
|
+ "passes": false
|
|
|
|
|
+ },
|
|
|
|
|
+ {
|
|
|
|
|
+ "id": 3,
|
|
|
|
|
+ "description": "播放器 - 进度条拖动",
|
|
|
|
|
+ "backend_test_steps": [],
|
|
|
|
|
+ "frontend_test_steps": [
|
|
|
|
|
+ "1. 打开播放器页面并开始播放",
|
|
|
|
|
+ "2. 验证进度条显示当前播放位置",
|
|
|
|
|
+ "3. 拖动进度条到中间位置",
|
|
|
|
|
+ "4. 验证播放位置跳转到对应时间",
|
|
|
|
|
+ "5. 验证时间显示同步更新"
|
|
|
|
|
+ ],
|
|
|
|
|
+ "status": "init",
|
|
|
|
|
+ "passes": false
|
|
|
|
|
+ },
|
|
|
|
|
+ {
|
|
|
|
|
+ "id": 4,
|
|
|
|
|
+ "description": "播放器 - 播放列表展示",
|
|
|
|
|
+ "backend_test_steps": [],
|
|
|
|
|
+ "frontend_test_steps": [
|
|
|
|
|
+ "1. 进入专辑详情页",
|
|
|
|
|
+ "2. 点击播放全部",
|
|
|
|
|
+ "3. 验证播放器显示当前播放列表",
|
|
|
|
|
+ "4. 验证当前播放音频高亮显示",
|
|
|
|
|
+ "5. 验证列表显示专辑内所有音频"
|
|
|
|
|
+ ],
|
|
|
|
|
+ "status": "init",
|
|
|
|
|
+ "passes": false
|
|
|
|
|
+ },
|
|
|
|
|
+ {
|
|
|
|
|
+ "id": 5,
|
|
|
|
|
+ "description": "播放器 - 循环模式(列表循环/单曲循环)",
|
|
|
|
|
+ "backend_test_steps": [],
|
|
|
|
|
+ "frontend_test_steps": [
|
|
|
|
|
+ "1. 打开有多个音频的专辑",
|
|
|
|
|
+ "2. 点击播放全部",
|
|
|
|
|
+ "3. 点击循环按钮切换模式",
|
|
|
|
|
+ "4. 验证模式切换:列表循环 → 单曲循环 → 关闭",
|
|
|
|
|
+ "5. 播放到最后一首时,验证列表循环回到第一首"
|
|
|
|
|
+ ],
|
|
|
|
|
+ "status": "init",
|
|
|
|
|
+ "passes": false
|
|
|
|
|
+ },
|
|
|
|
|
+ {
|
|
|
|
|
+ "id": 6,
|
|
|
|
|
+ "description": "播放器 - 随机播放",
|
|
|
|
|
+ "backend_test_steps": [],
|
|
|
|
|
+ "frontend_test_steps": [
|
|
|
|
|
+ "1. 打开有多个音频的专辑",
|
|
|
|
|
+ "2. 点击随机播放按钮",
|
|
|
|
|
+ "3. 验证随机播放模式开启",
|
|
|
|
|
+ "4. 点击下一首,验证随机跳转到非连续音频",
|
|
|
|
|
+ "5. 再次点击随机按钮,关闭随机模式"
|
|
|
|
|
+ ],
|
|
|
|
|
+ "status": "init",
|
|
|
|
|
+ "passes": false
|
|
|
|
|
+ },
|
|
|
|
|
+ {
|
|
|
|
|
+ "id": 7,
|
|
|
|
|
+ "description": "播放器 - 播放速度控制",
|
|
|
|
|
+ "backend_test_steps": [],
|
|
|
|
|
+ "frontend_test_steps": [
|
|
|
|
|
+ "1. 打开播放器页面",
|
|
|
|
|
+ "2. 点击播放速度按钮",
|
|
|
|
|
+ "3. 选择1.5x速度",
|
|
|
|
|
+ "4. 验证音频以1.5倍速播放",
|
|
|
|
|
+ "5. 刷新页面,验证速度设置已保存"
|
|
|
|
|
+ ],
|
|
|
|
|
+ "status": "init",
|
|
|
|
|
+ "passes": false
|
|
|
|
|
+ },
|
|
|
|
|
+ {
|
|
|
|
|
+ "id": 8,
|
|
|
|
|
+ "description": "播放器 - 收藏功能",
|
|
|
|
|
+ "backend_test_steps": [],
|
|
|
|
|
+ "frontend_test_steps": [
|
|
|
|
|
+ "1. 打开播放器页面",
|
|
|
|
|
+ "2. 点击收藏按钮(空心心形)",
|
|
|
|
|
+ "3. 验证按钮变为已收藏状态(实心心形)",
|
|
|
|
|
+ "4. 进入收藏页面",
|
|
|
|
|
+ "5. 验证当前音频显示在收藏列表中",
|
|
|
|
|
+ "6. 点击取消收藏,验证从列表移除"
|
|
|
|
|
+ ],
|
|
|
|
|
+ "status": "init",
|
|
|
|
|
+ "passes": false
|
|
|
|
|
+ },
|
|
|
|
|
+ {
|
|
|
|
|
+ "id": 9,
|
|
|
|
|
+ "description": "播放器 - 定时关闭",
|
|
|
|
|
+ "backend_test_steps": [],
|
|
|
|
|
+ "frontend_test_steps": [
|
|
|
|
|
+ "1. 打开播放器页面并开始播放",
|
|
|
|
|
+ "2. 点击定时关闭按钮",
|
|
|
|
|
+ "3. 选择15分钟",
|
|
|
|
|
+ "4. 验证倒计时显示正确",
|
|
|
|
|
+ "5. 等待或快进到定时时间",
|
|
|
|
|
+ "6. 验证播放自动暂停"
|
|
|
|
|
+ ],
|
|
|
|
|
+ "status": "init",
|
|
|
|
|
+ "passes": false
|
|
|
|
|
+ },
|
|
|
|
|
+ {
|
|
|
|
|
+ "id": 10,
|
|
|
|
|
+ "description": "播放器 - 毛玻璃背景效果",
|
|
|
|
|
+ "backend_test_steps": [],
|
|
|
|
|
+ "frontend_test_steps": [
|
|
|
|
|
+ "1. 打开播放器页面",
|
|
|
|
|
+ "2. 验证页面背景有模糊效果",
|
|
|
|
|
+ "3. 播放音频时,验证背景随封面色调变化",
|
|
|
|
|
+ "4. 切换不同音频,验证背景随之变化"
|
|
|
|
|
+ ],
|
|
|
|
|
+ "status": "init",
|
|
|
|
|
+ "passes": false
|
|
|
|
|
+ },
|
|
|
|
|
+ {
|
|
|
|
|
+ "id": 11,
|
|
|
|
|
+ "description": "播放器 - 播放列表折叠/展开",
|
|
|
|
|
+ "backend_test_steps": [],
|
|
|
|
|
+ "frontend_test_steps": [
|
|
|
|
|
+ "1. 打开播放器页面",
|
|
|
|
|
+ "2. 验证播放列表默认收起",
|
|
|
|
|
+ "3. 点击展开按钮",
|
|
|
|
|
+ "4. 验证播放列表展开显示所有音频",
|
|
|
|
|
+ "5. 点击收起按钮",
|
|
|
|
|
+ "6. 验证播放列表收起"
|
|
|
|
|
+ ],
|
|
|
|
|
+ "status": "init",
|
|
|
|
|
+ "passes": false
|
|
|
|
|
+ },
|
|
|
|
|
+ {
|
|
|
|
|
+ "id": 12,
|
|
|
|
|
+ "description": "播放器 - 按钮点击动画",
|
|
|
|
|
+ "backend_test_steps": [],
|
|
|
|
|
+ "frontend_test_steps": [
|
|
|
|
|
+ "1. 打开播放器页面",
|
|
|
|
|
+ "2. 点击播放/暂停按钮",
|
|
|
|
|
+ "3. 验证按钮有缩放动画反馈",
|
|
|
|
|
+ "4. 点击上一首/下一首按钮",
|
|
|
|
|
+ "5. 验证按钮有缩放动画反馈"
|
|
|
|
|
+ ],
|
|
|
|
|
+ "status": "init",
|
|
|
|
|
+ "passes": false
|
|
|
|
|
+ },
|
|
|
|
|
+ {
|
|
|
|
|
+ "id": 13,
|
|
|
|
|
+ "description": "播放器 - 专辑信息展示优化",
|
|
|
|
|
+ "backend_test_steps": [],
|
|
|
|
|
+ "frontend_test_steps": [
|
|
|
|
|
+ "1. 进入专辑详情页",
|
|
|
|
|
+ "2. 点击播放某个音频",
|
|
|
|
|
+ "3. 验证播放器显示专辑名称",
|
|
|
|
|
+ "4. 验证显示当前集数/总集数(如 2/10)",
|
|
|
|
|
+ "5. 切换上下首,验证集数正确更新"
|
|
|
|
|
+ ],
|
|
|
|
|
+ "status": "init",
|
|
|
|
|
+ "passes": false
|
|
|
|
|
+ },
|
|
|
|
|
+ {
|
|
|
|
|
+ "id": 14,
|
|
|
|
|
+ "description": "播放器 - 智能续播提示",
|
|
|
|
|
+ "backend_test_steps": [],
|
|
|
|
|
+ "frontend_test_steps": [
|
|
|
|
|
+ "1. 播放某个音频一段时间后关闭页面",
|
|
|
|
|
+ "2. 重新打开该音频",
|
|
|
|
|
+ "3. 验证弹出续播提示",
|
|
|
|
|
+ "4. 点击继续播放",
|
|
|
|
|
+ "5. 验证从上次位置继续播放"
|
|
|
|
|
+ ],
|
|
|
|
|
+ "status": "init",
|
|
|
|
|
+ "passes": false
|
|
|
|
|
+ },
|
|
|
|
|
+ {
|
|
|
|
|
+ "id": 15,
|
|
|
|
|
+ "description": "播放器 - 自动播放下一首",
|
|
|
|
|
+ "backend_test_steps": [],
|
|
|
|
|
+ "frontend_test_steps": [
|
|
|
|
|
+ "1. 打开有多个音频的专辑",
|
|
|
|
|
+ "2. 点击播放全部",
|
|
|
|
|
+ "3. 等待当前音频播放完毕",
|
|
|
|
|
+ "4. 验证自动跳转到下一首播放",
|
|
|
|
|
+ "5. 验证播放器UI同步更新"
|
|
|
|
|
+ ],
|
|
|
|
|
+ "status": "init",
|
|
|
|
|
+ "passes": false
|
|
|
|
|
+ }
|
|
|
|
|
+ ]
|
|
|
|
|
+}
|