parent.md 6.5 KB

测试用例 · 家长(Parent)

关联场景:../user-scenarios/02-parent.md。对应 e2e:../e2e/roles/parent/*.spec.js、../e2e/family-member-management.spec.js、../e2e/assessment-order-flow.spec.js、../e2e/dan-report-flow.spec.js、../e2e/ai-plan-task-flow.spec.js。

TC 编号 所属场景 模块 角色 优先级 类型 前置条件 测试步骤 预期结果 关联需求/设计 对应 e2e
TC-P-01 P-1 家庭 家长 P0 功能 已登录(默认 parent) 1. 创建家庭(名称「测试家庭1」) 家庭创建成功;生成唯一邀请码+二维码(令牌+落地页);角色变家庭管理员 FamilyInviteController e2e/roles/parent/family-management.spec.js
TC-P-02 P-2 家庭/成员 家长 P1 功能 家庭已创建;爷爷 C 可用 1. 分享邀请码/二维码给 C 2. C register-with-invite 加入 C 加入家庭,成员列表出现 C FamilyInviteController —
TC-P-03 P-2 成员资料 家长 P1 功能 家庭已创建 1. 添加成员资料(姓名/关系/生日/性别) 成员卡片正确显示;关系标签可选(RelationshipPicker) FamilyMembersController e2e/family-member-management.spec.js
TC-P-04 P-2 关系图 家长 P1 功能 成员 C 已加入 1. 编辑 C 关系为「外公」 关系图节点与关系标签同步更新 关系类型 CRUD/前端选择器 —
TC-P-05 P-4 任务 家长 P0 功能 家庭含孩子 B 1. 创建任务(标题/成员 B/积分 10/频率每日) 任务出现在 B 列表,状态待执行 TaskController e2e/roles/parent/../tasks
TC-P-06 P-4 任务审核 家长 P0 功能 B 已提交任务 1. 审批「通过」/「驳回」 通过→B 积分+N 并生成流水;驳回→退回重做;重复提交不重复发分 TaskController/PointsController —
TC-P-07 P-5 心愿 家长 P1 功能 孩子已创建心愿 1. 审批心愿(通过/驳回) 通过→扣积分进入兑换;驳回→心愿失效;积分不足兑换拦截 WishController/RewardController e2e/roles/parent/wish-management.spec.js
TC-P-08 P-6 能量 家长 P1 功能 已有能量记录 1. 进五维能量/健康指数首页 2. 查流水 显示家庭健康指数与五维能量分配(总和=100%);流水可追溯;无数据时空态非 500 EnergyController e2e/roles/parent/energy-dashboard.spec.js
TC-P-09 P-7 测评订单 家长 P0 功能 已绑定规划师 T;孩子 B 在家庭中 1. 申请测评(选 B+类型+T) 2. 孩子快照 3. 支付 生成测评订单;状态 已支付→待安排→已预约;未支付/未选规划师不进入待安排 AssessmentAppointmentController e2e/assessment-order-flow.spec.js
TC-P-10 P-8 健康报告 家长 P0 功能 持有募极生物菌群 PDF 1. 上传 PDF(/api/media/upload+解析入口) 识别为 gut_flora;三阶段上传→解析预览→确认入库;非募极报告提示「请确认是募极生物肠道菌群报告」 健康报告上传解析 e2e/dan-report-flow.spec.js
TC-P-11 P-8 报告查看 家长 P1 功能 报告已入库 1. 打开报告列表→菌群报告详情 显示菌群健康分/平衡/多样性、菌种明细、疾病风险;七维评分刷新 报告解析 —
TC-P-12 P-9 饮食推荐 家长 P1 功能 P-10 报告已入库 1. 打开「身→饮食推荐」 按报告生成食材推荐指数,展示可吃/慎吃列表;无报告时无推荐 饮食推荐系统 —
TC-P-13 P-10 AI 方案 家长 P0 功能 孩子 B 有报告;部分需会员 1. 选 B+目标 2. 调 LangGraph 生成方案 生成 overview+营养/饮食/运动三板块;可逐板块重生成/确认;未购买会员→提示购买 AI 统一走 LangGraph;AiGateway e2e/ai-plan-task-flow.spec.js
TC-P-14 P-10 方案提交 家长 P1 功能 方案已生成 1. 保存/提交方案 进入「已提交(待规划师审核)」或按配置直接发布 方案状态机 —
TC-P-15 P-3 双角色 家长 P0 权限 家庭含孩子 B 1. 个人中心→切换视角→选 B 2. 切回家长(密码) 3. 孩子端反向尝试 切换为孩子端界面(数据隔离);切回需密码;孩子端不能切回家长 POST /api/family/member/switch(替代废弃 switch-mode);双角色铁律 e2e/roles/parent/family-management.spec.js
TC-P-16 P-10 会员 家长 P1 功能 未购会员 1. 购买会员/套餐并支付 支付成功解锁方案生成等付费功能;未购买点击生成提示购买 MembershipController/ProductOrderController e2e/roles/parent/../membership
TC-P-17 P-12 积分/成长 家长 P1 功能 已有记录 1. 查积分明细 2. 查成长记录 积分流水与孩子成长记录一致;时间格式 yyyy-MM-dd HH:mm:ss;积分与流水总额一致 PointsController/GrowthController e2e/roles/parent/points.spec.js
TC-P-18 P-11 AI 对话 家长 P1 功能 已登录 1. POST /api/ai/health-coach/send(问便秘) 2. 多轮 返回基于知识库回答,可含产品/任务推荐;LangGraph 不可用时 AiGateway Fallback 兜底;多轮连续 AIChatController;LangGraph RAG —

门禁项与边界

  • TC-P-15(双角色边界,门禁):家长↔孩子视角可切;孩子端不能切回家长;切回家长需密码。任一项失败整体不通过。
  • TC-P-10a(异常):非募极生物报告识别失败 → 进入未知聚类待运营自学习,前端明确提示。
  • TC-P-13a(异常):LangGraph 超时/不可用 → AiGateway Fallback,前端友好提示而非 500。
  • TC-P-09a(异常):支付失败 → 订单回滚,不进入待安排。
  • TC-P-09b(功能·额度,来自深挖 F-修正):create 前置为「有效额度」——无额度/额度过期 → POST /api/assessment/appointment/create 返回「额度不足或已过期」,不建预约、不发放能量(见 test-cases/deep-dive-assessment-appointment.md TC-DV-03/10)。
  • TC-P-09c(异常·幂等,来自深挖 F4):同一 quotaId+memberId 重复提交 create → 当前会建 2 条预约并发 2 次能量【缺陷】,期望拒绝/返回既有(TC-DV-04)。
  • 关联深挖:测评预约模块的越权取消(F1)、确认状态守卫(F2)、状态机入口(F3)、并发额度(F7) 等全部缺陷与专项用例见 test-cases/deep-dive-assessment-appointment.md。