admin.md 32 KB

测试用例 · 平台运营(Admin / Web 管理端)

关联场景:../user-scenarios/05-admin.md。对应 e2e:../e2e/roles/admin/*.spec.js、../e2e/article-management.spec.js、../e2e/health-knowledge-base.spec.js、../e2e/health-report-audit.spec.js。

TC 编号 所属场景 模块 角色 优先级 类型 前置条件 测试步骤 预期结果 关联需求/设计 对应 e2e
TC-A-01 A-1 认证 运营 P0 接口 admin 账号 1. 管理端密码登录 登录进入 Dashboard;错误密码不签发 token AdminAuthController e2e/roles/admin/login.spec.js
TC-A-02 A-1 统计 运营 P1 功能 有业务数据 1. 打开任务统计页 显示任务总量/完成率,与库内一致 StatsController e2e/admin-panel.spec.js
TC-A-03 A-2 方案管理 运营 P1 功能 多家庭方案 1. 打开方案管理页(不筛家庭) 列出全部方案(含 source/进度/审核时间);可筛状态 方案管理(全量) —
TC-A-04 A-2 方案激活 运营 P1 功能 reviewed 方案 1. 对 reviewed 方案点击激活 生成任务成功,提示成功 方案激活 —
TC-A-05 A-2 报告解析 运营 P1 功能 gut_flora 已注册 1. 打开报告解析中台 类型列表返回≥1 条(含 gut_flora) AdminReportParserController e2e/health-report-audit.spec.js
TC-A-06 A-2 报告解析 运营 P1 接口 — 1. POST /api/admin/report-parser/types/save(typeId/显示名/路径/threshold) 2. 重复同 typeId 保存成功列表可见;重复 typeId 被拒绝 报告类型注册 —
TC-A-07 A-2 报告解析 运营 P2 功能 有未知报告上传 1. 打开未知报告聚类 2. 查看上传 3. 自学习生成类型 聚类列表可见;可自学习生成类型 未知聚类自学习 —
TC-A-08 A-3 文章 运营 P0 功能 文章素材 1. 创建文章→提交审核→通过 2. 长文(8000字)创建+更新 创建 1s 内返回成功(无超时);审核通过 C 端可见;长文稳定 文章发布-审核 e2e/article-management.spec.js
TC-A-09 A-3 文章·去重 运营 P1 异常 已有文章标题 1. 同标题重复创建 第二次被拦截(标题已存在) 文章标题去重 —
TC-A-10 A-4 关系类型 运营 P1 功能 关系类型管理页 1. 新增/编辑/停用关系类型 操作成功;家长端关系选择器同步生效 关系类型 CRUD e2e/roles/admin/../relationship
TC-A-11 A-4 勋章 运营 P0 接口 勋章素材 1. POST 创建勋章(名称/图标/触发条件/门槛) 200 成功,badgeId 自动生成,列表可见 勋章管理;黑盒回归 e2e/points-system.spec.js(参考)
TC-A-12 A-4 供应商 运营 P0 接口 供应商素材 1. POST /api/admin/ecom-supplier/save(昵称/手机号/真实姓名) 200 成功,列表 name=昵称;同手机号重复被拒/可控覆盖 供应商管理;黑盒回归 e2e/roles/admin/vendor/management.spec.js
TC-A-13 A-5 活动 运营 P1 功能 草稿活动 1. 草稿→提交审核→通过→撤回→退回草稿 状态流转正确;已发布可撤回;全流程无 500 活动审核撤回;黑盒回归 e2e/roles/admin/activity-review.spec.js
TC-A-14 A-6 知识库 运营 P1 接口 知识条目存在(如 id=1) 1. 删除知识条目 200 成功,列表移除,无 500 知识库管理;黑盒回归 e2e/health-knowledge-base.spec.js
TC-A-15 A-6 数据迁移 运营 P2 功能 sfms 源就绪 1. 执行 sfms→cfc 迁移 接口返回成功,关键业务表数据量更新;失败回滚+明确错误 多数据源/SfmsDataSourceConfig —
TC-A-16 A-7 参数校验 运营 P0 异常 各管理接口可用 1. 各接口传空 body/错类型字段 返回 400 + 具体字段提示(不再裸 500) 统一 Result<T>+全局异常;黑盒回归 e2e/admin-panel.spec.js

门禁项(近期修复回归)

  • TC-A-11(勋章创建 200)、TC-A-12(供应商创建 200)、TC-A-13(活动审核撤回无 500)、TC-A-14(知识库删除 200)、TC-A-08(长文文章无超时)、TC-A-16(参数校验 400 非 500) 必须全部通过。

本轮扩展场景用例(新增 SC-A)

TC 编号 所属场景 模块 角色 优先级 类型 前置条件 测试步骤 预期结果 关联需求/设计 对应 e2e
TC-A-17 A-16 /api/admin/report-parser/* 运营 P1 功能 已登录(默认 运营);相关前置数据就绪 1. 按场景流程执行:看未知类型 → 标类别 → 生效 2. 观察结果 达成目标:标注未知聚类;边界:新类先注册再解析 /api/admin/report-parser/* —
TC-A-18 A-17 优惠券/活动管理 运营 P1 功能 已登录(默认 运营);相关前置数据就绪 1. 按场景流程执行:建券/活动 → 设规则/名额 → 上线 2. 观察结果 达成目标:后台配券建活动;边界:时间冲突校验;名额超卖配置保护 优惠券/活动管理 —
TC-A-19 A-18 内容安全 运营 P1 功能 已登录(默认 运营);相关前置数据就绪 1. 按场景流程执行:队列 → 通过/下架 2. 观察结果 达成目标:审 UGC/AI;边界:敏感词命中拦截 内容安全 —
TC-A-20 A-19 GDPR 工单 运营 P1 功能 已登录(默认 运营);相关前置数据就绪 1. 按场景流程执行:接工单 → 执行归档/导出 2. 观察结果 达成目标:处理用户注销/导出;边界:审计留痕;冷静期 GDPR 工单 —
TC-A-21 A-20 网关/限流 运营 P1 功能 已登录(默认 运营);相关前置数据就绪 1. 按场景流程执行:配限流规则 → 生效 2. 观察结果 达成目标:接口防护;边界:误杀白名单 网关/限流 —
TC-A-22 A-21 模型管理 运营 P1 功能 已登录(默认 运营);相关前置数据就绪 1. 按场景流程执行:版控/上下线 2. 观察结果 达成目标:模型版本/开关;边界:下线前回退方案 模型管理 —
TC-A-23 A-22 知识库 运营 P1 功能 已登录(默认 运营);相关前置数据就绪 1. 按场景流程执行:CRUD → 同步 2. 观察结果 达成目标:维护营养知识;边界:同步失败重试 知识库 —

异常流用例(派生自正常流)

TC 编号 所属场景 模块 角色 优先级 类型 前置条件 测试步骤 预期结果 关联需求/设计 对应 e2e
TC-A-01-E A-1 认证 运营 P2 异常 admin 账号 1. 密码错误超 5 次 2. token 过期访问 3. 弱密码(如 123456)设新密码 错误密码不签发 token 且提示次数限制/锁定;过期 token 401 跳登录;弱密码 400 拦截 AdminAuthController —
TC-A-02-E A-1 统计 运营 P2 异常 有业务数据 1. 统计接口超时/库内无数据 2. 时间范围非法(起>止) 超时降级提示非500;无数据显示『暂无数据』;时间非法 400 StatsController —
TC-A-03-E A-2 方案管理 运营 P2 异常 多家庭方案 1. 方案列表接口超时 2. 状态筛选值非法 3. 跨家庭方案数据隔离 超时降级非500;非法筛选 400;仅返回有权家庭数据不串 方案管理(全量) —
TC-A-04-E A-2 方案激活 运营 P2 异常 reviewed 方案 1. 激活非 reviewed 方案 2. 激活时任务分解服务超时 3. 并发激活同一方案 非 reviewed 激活拦截;超时回滚不残半任务;并发幂等仅生成 1 次任务 方案激活 —
TC-A-05-E A-2 报告解析 运营 P2 异常 gut_flora 已注册 1. 类型列表接口超时 2. 注册重复 typeId 3. 类型路径非法 超时降级非500;重复 typeId 400 拒绝;路径非法 400 AdminReportParserController —
TC-A-06-E A-2 报告解析 运营 P2 异常 — 1. 重复 typeId 保存 2. 必填缺失(无 typeId/显示名) 3. threshold 非法(负) 重复 typeId 拒绝;必填缺失 400;threshold 非法 400 报告类型注册 —
TC-A-07-E A-2 报告解析 运营 P3 异常 有未知报告上传 1. 未知聚类列表接口超时 2. 自学习生成的类型与已注册重名 超时降级非500;重名类型生成被拒/提示已存在 未知聚类自学习 —
TC-A-08-E A-3 文章 运营 P2 异常 文章素材 1. 重复创建同标题文章 2. 长文(8000字)提交时网络中断 3. 标题含注入 同标题 400『标题已存在』;长文提交超时重试不丢稿;注入 400 或转义 文章发布-审核 —
TC-A-09-E A-3 文章·去重 运营 P2 异常 已有文章标题 1. 同标题重复创建 2. 标题空/超长 重复创建被拦截提示标题已存在;空/超长 400 文章标题去重 —
TC-A-10-E A-4 关系类型 运营 P2 异常 关系类型管理页 1. 新增重名关系类型 2. 停用后被引用的关系类型 3. 名称含注入 重名拒绝;停用被引用类型提示先解绑;注入 400/转义;家长端选择器同步生效仍正确 关系类型 CRUD —
TC-A-11-E A-4 勋章 运营 P2 异常 勋章素材 1. 重复 POST 同名称勋章 2. 触发条件/门槛非法(负) 3. 并发创建 重复 400/幂等;非法门槛 400;并发创建各自独立不串 勋章管理;黑盒回归 —
TC-A-12-E A-4 供应商 运营 P2 异常 供应商素材 1. 同手机号重复保存 2. 手机号格式非法 3. 必填缺失(无真实姓名) 同手机号拒绝/可控覆盖;非法格式 400;必填缺失 400;列表 name=昵称正确 供应商管理;黑盒回归 —
TC-A-13-E A-5 活动 运营 P2 异常 草稿活动 1. 活动已发布后再『提交审核』 2. 撤回非本人创建活动 3. 时间冲突(起<止非法) 已发布再提交审核守卫拦截;非本人撤回 403;时间冲突 400;撤回退回草稿 活动审核撤回;黑盒回归 —
TC-A-14-E A-6 知识库 运营 P2 异常 知识条目存在(如 id=1) 1. 删除被方案/文章引用的知识条目 2. 删除不存在 id 3. 并发删除同 id 被引用删除提示先解绑;不存在 404;并发删除幂等 知识库管理;黑盒回归 —
TC-A-15-E A-6 数据迁移 运营 P3 异常 sfms 源就绪 1. 迁移中源连接中断 2. 目标表锁 3. 重复执行迁移 中断回滚+明确错误非500;锁等待超时提示;重复执行幂等/提示已迁移 多数据源/SfmsDataSourceConfig —
TC-A-16-E A-7 参数校验 运营 P2 异常 各管理接口可用 1. 各接口传空 body 2. 字段类型错配(字符串传数字位) 3. 超长字段 空 body 400 含具体字段提示;类型错配 400;超长 400;不再裸 500 统一 Result<T>+全局异常;黑盒回归 —

本轮扩展异常流(派生自新增场景)

TC 编号 所属场景 模块 角色 优先级 类型 前置条件 测试步骤 预期结果 关联需求/设计 对应 e2e
TC-A-17-E A-16 /api/admin/report-parser/* 运营 P2 异常 已登录(默认 运营);相关前置数据就绪 1. 标注未知聚类时类目重名 2. 生效未注册路径 重名类目拒绝;未注册路径 400;先注册再解析 /api/admin/report-parser/* —
TC-A-18-E A-17 优惠券/活动管理 运营 P2 异常 已登录(默认 运营);相关前置数据就绪 1. 券时间冲突(起>止) 2. 名额配置超卖保护 3. 重复提交同活动 时间冲突 400;名额超卖配置保护生效;重复提交幂等 优惠券/活动管理 —
TC-A-19-E A-18 内容安全 运营 P2 异常 已登录(默认 运营);相关前置数据就绪 1. 审核队列接口超时 2. 命中敏感词内容通过 超时降级非500;命中敏感词强制拦截不放行 内容安全 —
TC-A-20-E A-19 GDPR 工单 运营 P2 异常 已登录(默认 运营);相关前置数据就绪 1. 并发处理同用户注销+导出工单 2. 越权处理他人工单 并发安全:注销与导出按序执行不冲突;越权工单 403 GDPR 工单 —
TC-A-21-E A-20 网关/限流 运营 P2 异常 已登录(默认 运营);相关前置数据就绪 1. 限流规则误杀白名单 IP 2. 规则配置非法(负阈值) 白名单不被限流;非法阈值 400;规则生效可控 网关/限流 —
TC-A-22-E A-21 模型管理 运营 P2 异常 已登录(默认 运营);相关前置数据就绪 1. 下线模型无回退方案 2. 上线非法模型版本 无回退方案拦截下线;非法版本 400;上下线版控正确 模型管理 —
TC-A-23-E A-22 知识库 运营 P2 异常 已登录(默认 运营);相关前置数据就绪 1. 同步失败(网络抖动) 2. 并发 CRUD 同条目 同步失败自动重试非500;并发 CRUD 乐观锁不互相覆盖 知识库 —

权限流用例(派生自正常流)

TC 编号 所属场景 模块 角色 优先级 类型 前置条件 测试步骤 预期结果 关联需求/设计 对应 e2e
TC-A-01-P A-1 认证 运营 P1 权限 admin 账号 1. 非 admin 角色访问管理端接口(统计/方案/报告解析/商品/勋章/供应商/活动/知识库) 2. 观察 非 admin 角色访问管理端接口统一 401/403,不泄露后台数据 AdminAuthController —
TC-A-02-P A-1 统计 运营 P1 权限 有业务数据 1. 非 admin 角色访问管理端接口(统计/方案/报告解析/商品/勋章/供应商/活动/知识库) 2. 观察 非 admin 角色访问管理端接口统一 401/403,不泄露后台数据 StatsController —
TC-A-03-P A-2 方案管理 运营 P1 权限 多家庭方案 1. 非 admin 角色访问管理端接口(统计/方案/报告解析/商品/勋章/供应商/活动/知识库) 2. 观察 非 admin 角色访问管理端接口统一 401/403,不泄露后台数据 方案管理(全量) —
TC-A-04-P A-2 方案激活 运营 P1 权限 reviewed 方案 1. 非 admin 角色访问管理端接口(统计/方案/报告解析/商品/勋章/供应商/活动/知识库) 2. 观察 非 admin 角色访问管理端接口统一 401/403,不泄露后台数据 方案激活 —
TC-A-05-P A-2 报告解析 运营 P1 权限 gut_flora 已注册 1. 非 admin 角色访问管理端接口(统计/方案/报告解析/商品/勋章/供应商/活动/知识库) 2. 观察 非 admin 角色访问管理端接口统一 401/403,不泄露后台数据 AdminReportParserController —
TC-A-06-P A-2 报告解析 运营 P1 权限 — 1. 非 admin 角色访问管理端接口(统计/方案/报告解析/商品/勋章/供应商/活动/知识库) 2. 观察 非 admin 角色访问管理端接口统一 401/403,不泄露后台数据 报告类型注册 —
TC-A-07-P A-2 报告解析 运营 P2 权限 有未知报告上传 1. 非 admin 角色访问管理端接口(统计/方案/报告解析/商品/勋章/供应商/活动/知识库) 2. 观察 非 admin 角色访问管理端接口统一 401/403,不泄露后台数据 未知聚类自学习 —
TC-A-08-P A-3 文章 运营 P1 权限 文章素材 1. 非 admin 角色访问管理端接口(统计/方案/报告解析/商品/勋章/供应商/活动/知识库) 2. 观察 非 admin 角色访问管理端接口统一 401/403,不泄露后台数据 文章发布-审核 —
TC-A-09-P A-3 文章·去重 运营 P1 权限 已有文章标题 1. 非 admin 角色访问管理端接口(统计/方案/报告解析/商品/勋章/供应商/活动/知识库) 2. 观察 非 admin 角色访问管理端接口统一 401/403,不泄露后台数据 文章标题去重 —
TC-A-10-P A-4 关系类型 运营 P1 权限 关系类型管理页 1. 非 admin 角色访问管理端接口(统计/方案/报告解析/商品/勋章/供应商/活动/知识库) 2. 观察 非 admin 角色访问管理端接口统一 401/403,不泄露后台数据 关系类型 CRUD —
TC-A-11-P A-4 勋章 运营 P1 权限 勋章素材 1. 非 admin 角色访问管理端接口(统计/方案/报告解析/商品/勋章/供应商/活动/知识库) 2. 观察 非 admin 角色访问管理端接口统一 401/403,不泄露后台数据 勋章管理;黑盒回归 —
TC-A-12-P A-4 供应商 运营 P1 权限 供应商素材 1. 非 admin 角色访问管理端接口(统计/方案/报告解析/商品/勋章/供应商/活动/知识库) 2. 观察 非 admin 角色访问管理端接口统一 401/403,不泄露后台数据 供应商管理;黑盒回归 —
TC-A-13-P A-5 活动 运营 P1 权限 草稿活动 1. 非 admin 角色访问管理端接口(统计/方案/报告解析/商品/勋章/供应商/活动/知识库) 2. 观察 非 admin 角色访问管理端接口统一 401/403,不泄露后台数据 活动审核撤回;黑盒回归 —
TC-A-14-P A-6 知识库 运营 P1 权限 知识条目存在(如 id=1) 1. 非 admin 角色访问管理端接口(统计/方案/报告解析/商品/勋章/供应商/活动/知识库) 2. 观察 非 admin 角色访问管理端接口统一 401/403,不泄露后台数据 知识库管理;黑盒回归 —
TC-A-15-P A-6 数据迁移 运营 P2 权限 sfms 源就绪 1. 非 admin 角色访问管理端接口(统计/方案/报告解析/商品/勋章/供应商/活动/知识库) 2. 观察 非 admin 角色访问管理端接口统一 401/403,不泄露后台数据 多数据源/SfmsDataSourceConfig —
TC-A-16-P A-7 参数校验 运营 P1 权限 各管理接口可用 1. 非 admin 角色访问管理端接口(统计/方案/报告解析/商品/勋章/供应商/活动/知识库) 2. 观察 非 admin 角色访问管理端接口统一 401/403,不泄露后台数据 统一 Result<T>+全局异常;黑盒回归 —

本轮扩展权限流(派生自新增场景)

TC 编号 所属场景 模块 角色 优先级 类型 前置条件 测试步骤 预期结果 关联需求/设计 对应 e2e
TC-A-17-P A-16 /api/admin/report-parser/* 运营 P1 权限 已登录(默认 运营);相关前置数据就绪 1. 非 admin 角色访问管理端接口(统计/方案/报告解析/商品/勋章/供应商/活动/知识库) 2. 观察拦截 非 admin 角色访问统一 401/403,不泄露后台数据 /api/admin/report-parser/* —
TC-A-18-P A-17 优惠券/活动管理 运营 P1 权限 已登录(默认 运营);相关前置数据就绪 1. 非 admin 角色访问管理端接口(统计/方案/报告解析/商品/勋章/供应商/活动/知识库) 2. 观察拦截 非 admin 角色访问统一 401/403,不泄露后台数据 优惠券/活动管理 —
TC-A-19-P A-18 内容安全 运营 P1 权限 已登录(默认 运营);相关前置数据就绪 1. 非 admin 角色访问管理端接口(统计/方案/报告解析/商品/勋章/供应商/活动/知识库) 2. 观察拦截 非 admin 角色访问统一 401/403,不泄露后台数据 内容安全 —
TC-A-20-P A-19 GDPR 工单 运营 P1 权限 已登录(默认 运营);相关前置数据就绪 1. 非 admin 角色访问管理端接口(统计/方案/报告解析/商品/勋章/供应商/活动/知识库) 2. 观察拦截 非 admin 角色访问统一 401/403,不泄露后台数据 GDPR 工单 —
TC-A-21-P A-20 网关/限流 运营 P1 权限 已登录(默认 运营);相关前置数据就绪 1. 非 admin 角色访问管理端接口(统计/方案/报告解析/商品/勋章/供应商/活动/知识库) 2. 观察拦截 非 admin 角色访问统一 401/403,不泄露后台数据 网关/限流 —
TC-A-22-P A-21 模型管理 运营 P1 权限 已登录(默认 运营);相关前置数据就绪 1. 非 admin 角色访问管理端接口(统计/方案/报告解析/商品/勋章/供应商/活动/知识库) 2. 观察拦截 非 admin 角色访问统一 401/403,不泄露后台数据 模型管理 —
TC-A-23-P A-22 知识库 运营 P1 权限 已登录(默认 运营);相关前置数据就绪 1. 非 admin 角色访问管理端接口(统计/方案/报告解析/商品/勋章/供应商/活动/知识库) 2. 观察拦截 非 admin 角色访问统一 401/403,不泄露后台数据 知识库 —

五维指标变化专项用例(本轮新增 SC-A-23~24)

完整用户故事见 ../user-scenarios/07-five-dimension.md(ED-13~14)。每条含正常流 + 具体异常流(-E) + 权限流(-P)。

正常流

TC 编号 所属场景 模块 角色 优先级 类型 前置条件 测试步骤 预期结果 关联需求/设计 对应 e2e
TC-A-25 SC-A-25 维度/权重/上限配置 运营 P1 功能 维度/权重/DailyLimit 配置管理接口可用 1. 对维度/权重/每日上限做 CRUD 2. 查变更生效 变更生效、后续能量按新配置;存量影响提示 DimensionConfigController/DimensionWeightController tests/e2e/energy-rules-config.spec.js
TC-A-26 SC-A-26 能量/归因权重 运营 P1 功能 AttributionWeights/configureSourceRatios 可用 1. 调整来源比例/归因权重 2. 查审计与概览影响 全局生效;变更写审计;概览/沙盘/天盘影响可观测 EnergyController/AttributionWeights —
TC-A-27 S-cfc-68(team.admin.manage) 团队分润/成本价/流水/提现审核 运营 P0 功能 管理端可访问 team.admin.manage 分润配置链路(TeamProfitAdminController +276/+741、S-cfc-68 已合入 17b6d6bfb) 1. 配置团队分润比例(成本价口径)2. 查询分润流水 3. 提现审核发起/驳回 4. 复核配置生效 1. 分润比例保存成功并按成本价计算 2. 流水查询含分润来源/金额/状态,分页正常 3. 审核动作留痕且仅授权角色可操作 4. 重查配置与计算一致 TeamProfitAdminController/TeamProfitConfigService/WithdrawalService(S-cfc-68,17b6d6bfb) —
TC-A-28 S-cfc-71(team.star.myView) 我的星级看板 家长/运营 P1 功能 已登录且存在星级评分数据(StarScoreCalculator 三维一次性加权,S-cfc-71 已合入 2b73e20f6/0f663eb9e) 1. 打开「我的星级」看板 2. 校验三维构成与差距换算 3. 对比 totalScore 口径 1. 看板可渲染、星级与差距计算正确 2. 三维构成合计 = totalScore(一次性加权口径)3. 维度为空数据时展示空态不报错 TeamStarController/StarScoreCalculator(S-cfc-71,2b73e20f6) TeamStarMyViewContractTest 24/24(研发侧契约单测已绿)
TC-A-29 S-cfc-70(team.star.digest) 月度星级简报 运营/家长 P1 功能 存在跨月星级评分数据(StarDigestService,S-cfc-70 已合入 de16f40b0) 1. 触发月度星级简报生成 2. 校验升/降/持平分类 3. 校验简报内容(恭喜/提示/行动建议+权益) 1. 当月星级 > 上月 → 升星简报(+1);降 → 降星简报(-1);持平 → 持平文案 2. 简报含新星级/解锁份数/权益或原因+补分回原级 3. 空数据不推送、无异常 StarDigestService(S-cfc-70,786c88e02) TeamStarDigestContractTest(研发侧契约单测已绿)
TC-A-30 S-cfc-60(team.invitation.create) 团队邀请创建 运营/团队负责人 P1 功能 已登录且为分销体系 admin/active 成员(DistributionInviteController,S-cfc-60 已合入 de16f40b0) 1. 调 POST /api/distribution/invite/generate 2. 校验返回对象结构 1. 返回 data 为对象:含 inviteCode/wxacode(小程序码独立落地页)/systemId/teamName/inviterId 2. 复用 distribution_relations.invite_code 不新建表 3. 越权(非 admin/active 成员)403 DistributionInviteController/TeamInvitationCreateContractTest(S-cfc-60,36974f042) —

异常流(-E,具体故障注入)

TC 编号 所属场景 模块 角色 优先级 类型 前置条件 测试步骤 预期结果 关联需求/设计 对应 e2e
TC-A-25-E SC-A-25 维度/权重/上限配置 运营 P2 异常 配置可用 + 造"删除被引用维度""权重非法""上限非法" 1. 删除被引用维度 2. 权重/上限非法(负/超界/和≠100%)3. 并发改同配置 1. 需确认/拒、不级联破坏存量 2. 400 拦截 3. 乐观锁/版本控制不互相覆盖 DimensionConfigController —
TC-A-27-E S-cfc-68 团队分润 运营 P2 异常 配置可用 + 造"比例非法""流水缺失""审批冲突" 1. 分润比例非法(负/超 100%)2. 同一提现单并发审核 3. 流水来源缺失 1. 400 拦截不落库 2. 乐观锁只允许一人审核 3. 流水标记来源缺失并提示、不静默记账 TeamProfitAdminController —
TC-A-26-E SC-A-26 能量/归因权重 运营 P2 异常 配置可用 + 造"比例非法""未同步" 1. 比例非法(负/超 1/和≠1)2. 配置未同步计算节点 1. 400 拦截 2. 展示兜底并提示、不静默错算 EnergyController/AttributionWeights —

权限流(-P)

TC 编号 所属场景 模块 角色 优先级 类型 前置条件 测试步骤 预期结果 关联需求/设计 对应 e2e
TC-A-25-P SC-A-25 维度/权重/上限配置 运营 P1 权限 运营 M + 家长 A 1. 家长 A 调维度/权重/上限 CRUD 非 admin 操作 403 DimensionConfigController —
TC-A-26-P SC-A-26 能量/归因权重 运营 P1 权限 运营 M + 家长 A 1. 家长 A 调全局归因权重/configure 非 admin 改全局 403 EnergyController —
TC-A-27-P S-cfc-68 团队分润/提现审核 运营 P1 权限 运营 M(授权)+ 家长 A 1. 家长 A 访问分润配置/提现审核 2. 无 token 访问 非授权角色 403;匿名 401(对齐 LOGIN_REQUIRED_PATHS) TeamProfitAdminController/JwtInterceptor —

睡眠情况选项后台维护专项用例(SC-A-27,2026-11-06 需求变更 C)

⚠️ 编号占用冲突(2026-11-10 实测发现):TC-A-27 / -E / -P 三流已被 S-cfc-68 团队分润/成本价/提现审核 占用(见上方五维专项段),与 SC-A-27「后台维护睡眠情况选项」语义完全无关。为不破坏既有资产,本专项采用不冲突编号 TC-A-27-S*(S = Sleep config);编号重排需主理人裁决,已登记 tests/TRACEABILITY-MATRIX.md 缺口 G-2。 需求源:docs/需求分析/2026-11-06-成就成长打卡需求变更.md 变更 C;场景源:tests/user-scenarios/应用场景总览.md 行 356;能力键:sleep.config.tags。配置接口最终路径由实现方定(候选 /api/admin/sleep/tags get/save 或 /api/config/public/value),标「需核实」。

正常流

TC 编号 所属场景 模块 角色 优先级 类型 前置条件 测试步骤 预期结果 关联需求/设计 对应 e2e
TC-A-27-S SC-A-27 管理端/睡眠配置 运营 P1 功能 运营 M(admin)登录;sys_config 可写 1. 打开睡眠情况选项维护页、查当前列表 2. 新增一项并保存 3. 修改一项文案并调整顺序 4. 删除一项后保存 5. 小程序端刷新睡眠打卡页 1. 展示当前配置(默认 9 项含「正常」) 2. 增/改/删/排序均保存成功并回显一致 3. 小程序端按新列表与顺序生效,未配置时回退默认 9 项 4. 保存写操作留痕(操作人/时间) 变更C / AdminSleepConfigController(参考 AdminGuideConfigController get/save 模式)+ sleep.quality.tags —

异常流(-E,具体故障注入)

TC 编号 所属场景 模块 角色 优先级 类型 前置条件 测试步骤 预期结果 关联需求/设计 对应 e2e
TC-A-27-S-E SC-A-27 管理端/睡眠配置 运营 P2 异常 造「空列表」「重复项」「超长标签」「非法 JSON」「并发保存」「删掉「正常」」 1. 保存空列表 2. 保存含重复项或 200 字超长标签 3. 写入非法 JSON value 4. 两个 admin 并发保存不同列表 5. 删除「正常」后查历史 remark 1. 空列表 400 或拒绝保存并保留原配置、不写空值 2. 重复项去重、超长拒绝或截断、不超存 3. 非法 JSON 400、前端读时回退默认 9 项不白屏 4. 并发按乐观锁/版本控制不互相覆盖、结果可判定 5. 历史 remark 字符串不受影响、无迁移副作用 变更C 验收口径 + 风险项 3 / 配置校验与回退契约 —

权限流(-P,针对具体越权对象)

TC 编号 所属场景 模块 角色 优先级 类型 前置条件 测试步骤 预期结果 关联需求/设计 对应 e2e
TC-A-27-S-P SC-A-27 管理端/睡眠配置 运营 P1 权限 家长 A、孩子 B、无 token、非授权运营账号各一 1. 家长 A 调 save 改睡眠选项 2. 孩子 B 调 get/save 3. 无 token 访问维护页 4. 非授权运营账号调 save 1. 家长 403、配置不被改动 2. 孩子端无入口、直调 403/401 3. 匿名 401 跳登录 4. 非授权账号 403;仅 admin 可维护且不留越权脏数据 变更C / AdminSleepConfigController 权限校验 + LOGIN_REQUIRED_PATHS —

非功能测试用例(性能 / 兼容 / 安全)

非功能维度:性能(大文件/并发/限流)、兼容(多端/多浏览器/主题)、安全(IDOR/XSS/上传/鉴权/SSRF)。编号后缀 -N 与正常流/异常流(-E)/权限流(-P)并列。

TC 编号 所属场景 模块 角色 优先级 类型 前置条件 测试步骤 预期结果 关联需求/设计 对应 e2e
TC-A-N01 SC-A-05 配置CRUD 运营 P1 性能 配置项 ≥ 1000 1. 打开配置列表 2. 翻页/筛选 列表 ≤ 2s;CRUD 即时生效 配置管理 —
TC-A-N02 SC-A-02 报告解析中台 运营 P0 性能 解析队列积压 ≥ 100 1. 观察队列吞吐/监控 单条 ≤ 30s;失败进未知聚类;监控可见积压 解析中台 —
TC-A-N03 SC-A-01 登录统计 运营 P1 性能 统计数据量大 1. 打开统计面板 2. 选时间范围 聚合 ≤ 3s;支持分页/缓存;大数据不超时 统计聚合 —
TC-A-N04 SC-A-20 限流熔断 运营 P0 性能 压测解析/AI 接口 1. 施压至阈值 2. 观察 触发限流/熔断返回 429/友好降级;系统不雪崩;恢复后正常 限流熔断 e2e/api/nonfunc-perf-compat.spec.js
TC-A-N05 SC-A-01 登录统计 运营 P0 安全 非 admin 账号 1. 用普通家长 token 访问 /api/admin/* 返回 401/403;后台不可被非管理员进入 后台鉴权 e2e/api/nonfunc-security.spec.js
TC-A-N06 SC-A-03 文章审核 运营 P1 安全 提交含 <script> 的审核内容 1. 发布文章含 XSS 载荷 2. 前端查看 内容转义/过滤;不执行脚本 内容安全 e2e/api/nonfunc-security.spec.js
TC-A-N07 SC-A-04 内容安全 运营 P0 安全 抓取 AI 内容源 URL 1. 提交内网/元数据 URL 触发抓取 禁止内网地址(SSRF 防护);仅白名单外域;超时截断 SSRF 防护 —
TC-A-N08 SC-A-21 知识库 运营 P1 安全 上传恶意知识库文件 1. 上传 .jsp/.sh/.html 知识库附件 类型校验拒绝;不落盘执行 上传校验 —
TC-A-N09 SC-A-19 注销导出 运营 P0 安全 审查导出工单 1. 导出用户数据 2. 校验权限与脱敏 仅工单授权用户可导出;数据脱敏打包;操作留痕审计 数据导出合规 —