# Implementation Plan: Admin Integration Testing ## Overview 本任务清单定义了后台管理系统前后端联调测试的具体步骤。联调按模块分阶段进行,确保每个模块在进入下一阶段前都能正常工作。 ## 联调前提条件 - 后端 API 服务运行在 `http://localhost:61551` - 前端开发服务运行在 `http://localhost:5173` - 数据库已初始化并有测试数据 - 已创建测试管理员账号 ## Tasks - [ ] 1. 联调环境准备 - [ ] 1.1 启动后端 API 服务 - 进入 `server/MiAssessment` 目录 - 运行 `dotnet run --project src/MiAssessment.Admin` - 确认服务启动在 61551 端口 - _Requirements: 1.1_ - [ ] 1.2 启动前端开发服务 - 进入 `server/MiAssessment/src/MiAssessment.Admin/admin-web` 目录 - 运行 `npm run dev` - 确认服务启动在 5173 端口 - _Requirements: 1.2_ - [ ] 1.3 验证跨域配置 - 打开浏览器访问 `http://localhost:5173` - 检查控制台无 CORS 错误 - _Requirements: 1.3, 1.4_ - [ ] 2. 认证流程联调 - [ ] 2.1 登录功能测试 - 访问登录页面 - 输入测试账号密码登录 - 验证登录成功跳转到首页 - 检查 localStorage 中存储了 token - _Requirements: 2.1, 2.2_ - [ ] 2.2 Token 刷新测试 - 修改 access token 过期时间为 1 分钟(测试用) - 等待 token 过期后操作页面 - 验证自动刷新 token 成功 - _Requirements: 2.3_ - [ ] 2.3 登出功能测试 - 点击退出登录 - 验证跳转到登录页 - 验证 token 已清除 - _Requirements: 2.4_ - [ ] 3. Dashboard 仪表盘联调 - [ ] 3.1 概览数据测试 - 访问首页仪表盘 - 验证今日统计数据显示正确 - 验证累计统计数据显示正确 - _Backend: Task 20, Frontend: Task 2_ - [ ] 3.2 趋势图表测试 - 选择不同日期范围 - 验证图表数据更新 - _Backend: Task 20, Frontend: Task 2_ - [ ] 3.3 待办事项测试 - 验证待审核提现数量 - 验证待确认预约数量 - _Backend: Task 20, Frontend: Task 2_ - [ ] 4. 系统配置模块联调 - [ ] 4.1 配置列表测试 - 访问系统配置页面 - 验证配置按类型分组显示 - _Backend: Task 2, Frontend: Task 3_ - [ ] 4.2 配置更新测试 - 编辑一个配置项 - 保存并验证更新成功 - 刷新页面验证数据持久化 - _Backend: Task 2, Frontend: Task 3_ - [ ] 5. Checkpoint 1 - 基础模块联调完成 - 确认 Dashboard 和 Config 模块联调通过 - 记录发现的问题并修复 - [ ] 6. 内容管理模块联调 - [ ] 6.1 轮播图 CRUD 测试 - 新增轮播图(上传图片、填写信息) - 验证列表显示新增数据 - 编辑轮播图信息 - 切换状态 - 删除轮播图 - _Backend: Task 3, Frontend: Task 4_ - [ ] 6.2 轮播图排序测试 - 拖拽调整排序 - 验证排序保存成功 - _Backend: Task 3, Frontend: Task 4_ - [ ] 6.3 宣传图 CRUD 测试 - 新增宣传图 - 按位置筛选 - 编辑和删除 - _Backend: Task 4, Frontend: Task 4_ - [ ] 7. 测评管理模块联调 - [ ] 7.1 测评类型 CRUD 测试 - 新增测评类型 - 编辑价格和介绍内容 - 切换状态(下线/上线/即将上线) - 删除测评类型 - _Backend: Task 6, Frontend: Task 6_ - [ ] 7.2 题库管理测试 - 新增题目 - 按测评类型筛选 - 批量导入题目(Excel) - 验证导入结果 - _Backend: Task 7, Frontend: Task 6_ - [ ] 7.3 题目分类映射测试 - 选择题目 - 打开分类映射对话框 - 选择多个分类 - 保存并验证映射关系 - _Backend: Task 9, Frontend: Task 6_ - [ ] 7.4 报告分类测试 - 选择测评类型 - 查看分类树 - 新增子分类 - 验证删除约束(有子分类时禁止删除) - _Backend: Task 8, Frontend: Task 6_ - [ ] 7.5 报告结论测试 - 选择分类 - 新增结论(最强/较强/较弱/最弱) - 编辑富文本内容 - 删除结论 - _Backend: Task 10, Frontend: Task 6_ - [ ] 8. Checkpoint 2 - 内容和测评模块联调完成 - 确认 Content 和 Assessment 模块联调通过 - 记录发现的问题并修复 - [ ] 9. 用户管理模块联调 - [ ] 9.1 用户列表测试 - 访问用户管理页面 - 使用多条件筛选(UID、手机号、等级、状态、日期) - 验证分页功能 - _Backend: Task 12, Frontend: Task 7_ - [ ] 9.2 用户详情测试 - 点击查看用户详情 - 验证显示完整信息(上级用户、余额、收入、订单数等) - _Backend: Task 12, Frontend: Task 7_ - [ ] 9.3 用户操作测试 - 切换用户状态 - 修改用户等级 - 导出用户列表 - _Backend: Task 12, Frontend: Task 7_ - [ ] 10. 订单管理模块联调 - [ ] 10.1 订单列表测试 - 访问订单管理页面 - 使用多条件筛选 - 验证状态颜色显示 - _Backend: Task 13, Frontend: Task 8_ - [ ] 10.2 订单详情测试 - 点击查看订单详情 - 验证显示完整信息(用户、商品、支付、关联记录) - _Backend: Task 13, Frontend: Task 8_ - [ ] 10.3 退款功能测试 - 选择已支付订单 - 发起退款 - 验证退款金额校验 - 验证退款状态更新 - _Backend: Task 13, Frontend: Task 8_ - [ ] 11. Checkpoint 3 - 用户和订单模块联调完成 - 确认 User 和 Order 模块联调通过 - 记录发现的问题并修复 - [ ] 12. 规划师管理模块联调 - [ ] 12.1 规划师 CRUD 测试 - 新增规划师(上传头像、填写信息) - 编辑规划师信息 - 切换状态 - 拖拽排序 - 删除规划师 - _Backend: Task 15, Frontend: Task 10_ - [ ] 12.2 预约记录测试 - 访问预约记录页面 - 按规划师、日期、状态筛选 - 查看预约详情 - 修改预约状态 - 导出预约记录 - _Backend: Task 15, Frontend: Task 10_ - [ ] 13. 分销管理模块联调 - [ ] 13.1 邀请码管理测试 - 批量生成邀请码 - 验证生成的批次号 - 分配邀请码给用户 - 导出邀请码 - _Backend: Task 16, Frontend: Task 11_ - [ ] 13.2 佣金记录测试 - 查看佣金统计卡片 - 使用多条件筛选 - 查看佣金详情 - 导出佣金记录 - _Backend: Task 17, Frontend: Task 11_ - [ ] 13.3 提现审核测试 - 查看提现列表 - 审核通过提现申请 - 审核拒绝提现申请(填写原因) - 完成打款(填写交易号) - 导出提现记录 - _Backend: Task 18, Frontend: Task 11_ - [ ] 14. 权限控制联调 - [ ] 14.1 API 权限测试 - 使用无权限账号调用受保护 API - 验证返回 403 错误 - _Backend: Task 21, Frontend: Task 12_ - [ ] 14.2 页面权限测试 - 使用无权限账号访问页面 - 验证按钮被隐藏 - 验证菜单被隐藏 - _Backend: Task 21, Frontend: Task 12_ - [ ] 15. Final Checkpoint - 全部模块联调完成 - 确认所有模块联调通过 - 整理联调问题清单 - 确认所有问题已修复 ## 联调问题记录模板 | 模块 | 问题描述 | 前端/后端 | 负责人 | 状态 | |-----|---------|----------|-------|------| | 示例 | 登录接口返回格式不一致 | 后端 | - | 待修复 | ## Notes - 联调任务编号与前后端任务编号对应,便于追踪 - 每个 Checkpoint 是前后端同步点,需要双方确认 - 发现问题及时记录,避免遗漏 - 建议使用 Postman 或类似工具辅助 API 测试