# 游戏功能重构测试指南 ## 测试准备 ### 1. 启动应用 ```bash npm run dev # 或 npm run start ``` ### 2. 登录并选择Token - 进入Token管理页面 - 选择一个有效的Token - 等待WebSocket连接成功(显示"已连接") ### 3. 进入游戏功能页面 - 导航栏点击"游戏功能" - 确认看到身份牌和三个标签页 --- ## 详细测试步骤 ### 一、基础UI测试 #### 1.1 标签页布局 - [ ] 确认看到三个标签页:每日、俱乐部、活动 - [ ] 确认身份牌在标签页上方常驻显示 - [ ] 点击每个标签页,确认能正常切换 - [ ] 确认切换时有平滑动画效果 #### 1.2 响应式测试 - [ ] 桌面端(>1024px):卡片以网格形式展示,每行2-3个 - [ ] 平板端(768-1024px):卡片以网格形式展示,每行1-2个 - [ ] 移动端(<768px):卡片单列垂直排列 - [ ] 调整浏览器窗口大小,确认布局自适应 #### 1.3 主题测试 - [ ] 切换到深色主题,确认所有卡片正常显示 - [ ] 切换回浅色主题,确认所有卡片正常显示 - [ ] 确认按钮和文字在两种主题下都清晰可读 --- ### 二、【每日】标签页功能测试 #### 2.1 队伍阵容(TeamStatus) **测试步骤**: 1. 点击"每日"标签页 2. 找到"队伍阵容"卡片 3. 查看当前阵容显示是否正确 4. 点击阵容切换按钮(1、2、3、4) 5. 点击刷新按钮 **预期结果**: - [ ] 当前阵容编号正确显示 - [ ] 英雄头像和名称正确显示 - [ ] 切换阵容后,英雄列表更新 - [ ] 刷新按钮有旋转动画 #### 2.2 每日任务(DailyTaskStatus) **测试步骤**: 1. 查看每日任务卡片 2. 检查任务列表显示 3. 查看完成状态标识 **预期结果**: - [ ] 任务列表正确显示 - [ ] 完成/未完成状态正确 - [ ] 进度条准确反映进度 #### 2.3 咸将塔(TowerStatus) **测试步骤**: 1. 查看咸将塔卡片 2. 检查当前层数显示(如:5-3) 3. 检查剩余体力显示 4. 点击"开始爬塔"按钮 **预期结果**: - [ ] 当前层数格式正确(floor-layer) - [ ] 剩余体力数值正确 - [ ] 体力不足时按钮禁用 - [ ] 点击后显示"爬塔中..." - [ ] 爬塔完成后层数更新 #### 2.4 挂机时间(HangUpStatus)★新组件 **测试步骤**: 1. 查看挂机时间卡片 2. 检查剩余时间倒计时(格式:HH:MM:SS) 3. 检查已挂机时间显示 4. 点击"加钟"按钮 5. 点击"领取奖励"按钮 **预期结果**: - [ ] 倒计时每秒更新 - [ ] 时间格式正确(00:00:00) - [ ] 加钟按钮点击后显示"加钟中..." - [ ] 加钟完成后剩余时间增加 - [ ] 领取按钮点击后显示"领取中..." - [ ] 领取完成后显示成功消息 #### 2.5 咸鱼大冲关(StudyStatus)★新组件 **测试步骤**: 1. 查看咸鱼大冲关卡片 2. 检查完成状态(已完成/待完成) 3. 点击"🎯 一键答题"按钮 4. 观察答题进度显示 **预期结果**: - [ ] 状态标识正确(每周任务) - [ ] 已完成时显示"✅ 已完成无需作答" - [ ] 未完成时显示"🎯 一键答题" - [ ] 答题中显示进度(如:答题中 5/10) - [ ] 答题完成后状态更新为已完成 #### 2.6 盐罐机器人(BottleHelperStatus)★新组件 **测试步骤**: 1. 查看盐罐机器人卡片 2. 检查运行状态(运行中/已停止) 3. 检查剩余时间倒计时 4. 点击"启动服务"或"重启服务"按钮 **预期结果**: - [ ] 运行状态正确显示 - [ ] 倒计时每秒更新 - [ ] 点击按钮后显示操作消息 - [ ] 操作完成后状态更新 --- ### 三、【俱乐部】标签页功能测试 #### 3.1 俱乐部签到(LegionSigninStatus)★新组件 **测试步骤**: 1. 点击"俱乐部"标签页 2. 查看俱乐部签到卡片 3. 检查签到状态(已签到/待签到) 4. 查看当前俱乐部名称 5. 点击"立即签到"按钮 **预期结果**: - [ ] 签到状态正确显示 - [ ] 俱乐部名称正确显示 - [ ] 已签到时按钮禁用 - [ ] 点击签到后显示操作消息 - [ ] 签到完成后状态更新为"已签到" #### 3.2 俱乐部赛车(CarManagement) **测试步骤**: 1. 查看俱乐部赛车卡片 2. 测试赛车相关功能 **预期结果**: - [ ] 赛车信息正确显示 - [ ] 相关操作按钮正常工作 #### 3.3 俱乐部信息(ClubInfo) **测试步骤**: 1. 查看俱乐部信息卡片 2. 切换子标签页(概览、成员、盐场战绩) 3. 点击刷新按钮 **预期结果**: - [ ] 俱乐部概览信息正确(战力、段位、成员数等) - [ ] 成员列表正确显示(按战力排序) - [ ] 盐场战绩正常显示 - [ ] 刷新按钮正常工作 #### 3.4 俱乐部排位(LegionMatchStatus)★新组件 **测试步骤**: 1. 查看俱乐部排位卡片 2. 检查报名状态(已报名/未报名) 3. 阅读赛事说明 4. 点击"立即报名"按钮 **预期结果**: - [ ] 报名状态正确显示 - [ ] 赛事说明清晰(周三周四周五) - [ ] 已报名时按钮禁用 - [ ] 点击报名后显示操作消息 - [ ] 报名完成后状态更新 --- ### 四、【活动】标签页功能测试 #### 4.1 月度任务(MonthlyTaskStatus)★新组件 **测试步骤**: 1. 点击"活动"标签页 2. 查看月度任务卡片 3. 检查剩余天数显示 4. 查看钓鱼进度和百分比 5. 查看竞技场进度和百分比 6. 点击"刷新进度"按钮 7. 点击"钓鱼补齐"按钮 8. 点击"钓鱼补齐"右侧下拉菜单,选择"一键完成" 9. 点击"竞技场补齐"按钮 10. 点击"竞技场补齐"右侧下拉菜单,选择"一键完成" **预期结果**: - [ ] 剩余天数正确显示 - [ ] 钓鱼进度格式正确(如:100/320 (31%)) - [ ] 竞技场进度格式正确(如:50/240 (20%)) - [ ] 刷新按钮点击后显示"刷新中..." - [ ] 刷新完成后进度更新 - [ ] 补齐按钮点击后显示"补齐中..." - [ ] 补齐过程中显示提示消息(如:检测到免费次数、开始付费补齐等) - [ ] 补齐完成后显示成功消息 - [ ] 一键完成功能正常工作 - [ ] 补齐规则说明清晰易懂 #### 4.2 咸将升级模块(UpgradeModule) **测试步骤**: 1. 查看咸将升级模块卡片 2. 设置升星次数 3. 设置图鉴升级次数 4. 勾选/取消"领取图鉴奖励" 5. 设置领取奖励次数 6. 点击"开始升级"按钮 7. 观察进度条和当前操作提示 **预期结果**: - [ ] 配置项输入正常 - [ ] 进度条实时更新 - [ ] 当前操作提示准确(咸将升星中/图鉴升级中/领取奖励中) - [ ] 升级完成后显示成功消息 --- ### 五、WebSocket 通信测试 #### 5.1 命令发送 - [ ] 每个按钮点击后都能正常发送命令 - [ ] 浏览器控制台无错误信息 - [ ] 命令参数正确 #### 5.2 响应处理 - [ ] 服务器响应正常接收 - [ ] 数据正确更新到界面 - [ ] 状态实时刷新 #### 5.3 连接状态 - [ ] 连接断开时功能被禁用 - [ ] 重新连接后功能恢复 - [ ] 连接状态显示准确 --- ### 六、错误处理测试 #### 6.1 无Token情况 - [ ] 未选择Token时,显示警告消息 - [ ] 提示用户选择Token #### 6.2 WebSocket未连接 - [ ] 未连接时,显示错误消息 - [ ] 提示用户等待连接 #### 6.3 请求超时 - [ ] 请求超时时显示友好提示 - [ ] 不影响其他功能使用 #### 6.4 服务器错误 - [ ] 服务器返回错误时显示错误消息 - [ ] 用户可以重试操作 --- ### 七、性能测试 #### 7.1 首屏加载 - [ ] 页面加载速度正常(<3秒) - [ ] 无明显卡顿 #### 7.2 标签页切换 - [ ] 标签页切换流畅 - [ ] 切换动画不卡顿 #### 7.3 数据更新 - [ ] 倒计时流畅(1秒间隔准确) - [ ] 进度条更新流畅 - [ ] 批量操作不阻塞UI --- ### 八、浏览器兼容性测试 测试浏览器: - [ ] Chrome/Edge (最新版) - [ ] Firefox (最新版) - [ ] Safari (最新版,Mac/iOS) - [ ] 移动浏览器(Chrome/Safari) --- ### 九、常见问题排查 #### 问题1:标签页无法切换 **可能原因**: - Naive UI 未正确安装 - n-tabs 组件导入错误 **解决方案**: ```bash npm install naive-ui ``` #### 问题2:新组件不显示 **可能原因**: - 组件未正确导入 - 组件路径错误 **解决方案**: 检查 GameStatus.vue 中的 import 语句 #### 问题3:倒计时不更新 **可能原因**: - 定时器未启动 - 组件未挂载 **解决方案**: 检查组件的 onMounted 和 startTimer 方法 #### 问题4:WebSocket命令无响应 **可能原因**: - Token无效 - WebSocket连接断开 - 服务器未响应 **解决方案**: 1. 检查Token是否有效 2. 检查WebSocket连接状态 3. 查看浏览器控制台Network标签 #### 问题5:月度任务补齐失败 **可能原因**: - 资源不足(钓鱼券、竞技场次数) - 网络超时 - 服务器限制 **解决方案**: 1. 检查游戏内资源是否充足 2. 增加超时时间 3. 分批执行 --- ### 十、测试报告模板 测试完成后,请填写以下报告: #### 测试基本信息 - 测试时间:____年__月__日 - 测试人员:________ - 测试环境:________(浏览器/操作系统) - 测试版本:________ #### 测试结果汇总 - 总测试项:____ - 通过项:____ - 失败项:____ - 阻塞项:____ #### 发现的问题 | 序号 | 问题描述 | 严重级别 | 复现步骤 | 预期结果 | 实际结果 | 状态 | |-----|---------|---------|---------|---------|---------|------| | 1 | | 高/中/低 | | | | 待修复/已修复 | | 2 | | | | | | | #### 改进建议 1. 2. 3. #### 测试结论 - [ ] 通过,可以发布 - [ ] 有问题,需要修复 - [ ] 阻塞,暂不能发布 --- ## 自动化测试(可选) 如果需要编写自动化测试,可以使用以下框架: ### 单元测试(Vitest) ```bash npm install -D vitest @vue/test-utils ``` ### E2E测试(Playwright) ```bash npm install -D @playwright/test ``` --- ## 测试通过标准 满足以下所有条件即视为测试通过: 1. ✅ 所有功能正常工作,无明显bug 2. ✅ UI显示正常,无布局错乱 3. ✅ 响应式布局在所有设备上正常 4. ✅ WebSocket通信正常 5. ✅ 错误处理完善,有友好提示 6. ✅ 性能流畅,无明显卡顿 7. ✅ 浏览器兼容性良好 8. ✅ 深色主题支持正常 --- ## 结论 本测试指南涵盖了游戏功能重构后的所有测试场景。建议按照以上步骤逐项测试,确保所有功能在新布局下正常工作。测试过程中发现的问题应及时记录并修复。