生成依据:
tdd-orchestrator/scripts/test_inventory.py对全仓库测试源的只读扫描。 仅发现/格式化/跟踪已有测试,不创建、不发明。每条用例均标注来源(原文件路径 + 锚点), 进度回写落在.tdd/test-progress.json侧车(按来源锚点索引),绝不改动原测试文件。
| 来源类型 | 文件数 | 用例/方法数 |
|---|---|---|
| 结构化测试用例(md) | 11 | 784 |
| Playwright(spec.js) | 94 | 563 |
| Python(pytest) | 12 | 55 |
| Java后端(测试文件) | 342 | 2824 (@Test) |
| 用户场景(md) | 11 | 文件级 |
| 合计 | — | 4226 用例/方法 |
tests/test-cases/*.md)每条来源锚点 =
文件#TC编号,回写进度时定位此锚点即可,不改原 markdown 表格。
| TC编号 | 模块 | 角色 | 优先级 | 类型 | 来源 | 对应e2e | 关联设计 |
|---|---|---|---|---|---|---|---|
TC-A-01 |
认证 | 运营 | P0 | 接口 | tests/test-cases/admin.md#TC-A-01 |
AdminAuthController | 登录进入 Dashboard;错误密码不签发 token |
TC-A-02 |
统计 | 运营 | P1 | 功能 | tests/test-cases/admin.md#TC-A-02 |
StatsController | 显示任务总量/完成率,与库内一致 |
TC-A-03 |
方案管理 | 运营 | P1 | 功能 | tests/test-cases/admin.md#TC-A-03 |
方案管理(全量) | 列出全部方案(含 source/进度/审核时间);可筛状态 |
TC-A-04 |
方案激活 | 运营 | P1 | 功能 | tests/test-cases/admin.md#TC-A-04 |
方案激活 | 生成任务成功,提示成功 |
TC-A-05 |
报告解析 | 运营 | P1 | 功能 | tests/test-cases/admin.md#TC-A-05 |
AdminReportParserController | 类型列表返回≥1 条(含 gut_flora) |
TC-A-06 |
报告解析 | 运营 | P1 | 接口 | tests/test-cases/admin.md#TC-A-06 |
报告类型注册 | 保存成功列表可见;重复 typeId 被拒绝 |
TC-A-07 |
报告解析 | 运营 | P2 | 功能 | tests/test-cases/admin.md#TC-A-07 |
未知聚类自学习 | 聚类列表可见;可自学习生成类型 |
TC-A-08 |
文章 | 运营 | P0 | 功能 | tests/test-cases/admin.md#TC-A-08 |
文章发布-审核 | 创建 1s 内返回成功(无超时);审核通过 C 端可见;长文稳定 |
TC-A-09 |
文章·去重 | 运营 | P1 | 异常 | tests/test-cases/admin.md#TC-A-09 |
文章标题去重 | 第二次被拦截(标题已存在) |
TC-A-10 |
关系类型 | 运营 | P1 | 功能 | tests/test-cases/admin.md#TC-A-10 |
关系类型 CRUD | 操作成功;家长端关系选择器同步生效 |
TC-A-11 |
勋章 | 运营 | P0 | 接口 | tests/test-cases/admin.md#TC-A-11 |
勋章管理;黑盒回归 | 200 成功,badgeId 自动生成,列表可见 |
TC-A-12 |
供应商 | 运营 | P0 | 接口 | tests/test-cases/admin.md#TC-A-12 |
供应商管理;黑盒回归 | 200 成功,列表 name=昵称;同手机号重复被拒/可控覆盖 |
TC-A-13 |
活动 | 运营 | P1 | 功能 | tests/test-cases/admin.md#TC-A-13 |
活动审核撤回;黑盒回归 | 状态流转正确;已发布可撤回;全流程无 500 |
TC-A-14 |
知识库 | 运营 | P1 | 接口 | tests/test-cases/admin.md#TC-A-14 |
知识库管理;黑盒回归 | 200 成功,列表移除,无 500 |
TC-A-15 |
数据迁移 | 运营 | P2 | 功能 | tests/test-cases/admin.md#TC-A-15 |
多数据源/SfmsDataSourceConfig | 接口返回成功,关键业务表数据量更新;失败回滚+明确错误 |
TC-A-16 |
参数校验 | 运营 | P0 | 异常 | tests/test-cases/admin.md#TC-A-16 |
统一 Result<T>+全局异常;黑盒回归 |
返回 400 + 具体字段提示(不再裸 500) |
TC-A-17 |
/api/admin/report-parser/* | 运营 | P1 | 功能 | tests/test-cases/admin.md#TC-A-17 |
/api/admin/report-parser/* | 达成目标:标注未知聚类;边界:新类先注册再解析 |
TC-A-18 |
优惠券/活动管理 | 运营 | P1 | 功能 | tests/test-cases/admin.md#TC-A-18 |
优惠券/活动管理 | 达成目标:后台配券建活动;边界:时间冲突校验;名额超卖配置保护 |
TC-A-19 |
内容安全 | 运营 | P1 | 功能 | tests/test-cases/admin.md#TC-A-19 |
内容安全 | 达成目标:审 UGC/AI;边界:敏感词命中拦截 |
TC-A-20 |
GDPR 工单 | 运营 | P1 | 功能 | tests/test-cases/admin.md#TC-A-20 |
GDPR 工单 | 达成目标:处理用户注销/导出;边界:审计留痕;冷静期 |
TC-A-21 |
网关/限流 | 运营 | P1 | 功能 | tests/test-cases/admin.md#TC-A-21 |
网关/限流 | 达成目标:接口防护;边界:误杀白名单 |
TC-A-22 |
模型管理 | 运营 | P1 | 功能 | tests/test-cases/admin.md#TC-A-22 |
模型管理 | 达成目标:模型版本/开关;边界:下线前回退方案 |
TC-A-23 |
知识库 | 运营 | P1 | 功能 | tests/test-cases/admin.md#TC-A-23 |
知识库 | 达成目标:维护营养知识;边界:同步失败重试 |
TC-A-01-E |
认证 | 运营 | P2 | 异常 | tests/test-cases/admin.md#TC-A-01-E |
AdminAuthController | 错误密码不签发 token 且提示次数限制/锁定;过期 token 401 跳登录;弱密码 400 拦截 |
TC-A-02-E |
统计 | 运营 | P2 | 异常 | tests/test-cases/admin.md#TC-A-02-E |
StatsController | 超时降级提示非500;无数据显示『暂无数据』;时间非法 400 |
TC-A-03-E |
方案管理 | 运营 | P2 | 异常 | tests/test-cases/admin.md#TC-A-03-E |
方案管理(全量) | 超时降级非500;非法筛选 400;仅返回有权家庭数据不串 |
TC-A-04-E |
方案激活 | 运营 | P2 | 异常 | tests/test-cases/admin.md#TC-A-04-E |
方案激活 | 非 reviewed 激活拦截;超时回滚不残半任务;并发幂等仅生成 1 次任务 |
TC-A-05-E |
报告解析 | 运营 | P2 | 异常 | tests/test-cases/admin.md#TC-A-05-E |
AdminReportParserController | 超时降级非500;重复 typeId 400 拒绝;路径非法 400 |
TC-A-06-E |
报告解析 | 运营 | P2 | 异常 | tests/test-cases/admin.md#TC-A-06-E |
报告类型注册 | 重复 typeId 拒绝;必填缺失 400;threshold 非法 400 |
TC-A-07-E |
报告解析 | 运营 | P3 | 异常 | tests/test-cases/admin.md#TC-A-07-E |
未知聚类自学习 | 超时降级非500;重名类型生成被拒/提示已存在 |
TC-A-08-E |
文章 | 运营 | P2 | 异常 | tests/test-cases/admin.md#TC-A-08-E |
文章发布-审核 | 同标题 400『标题已存在』;长文提交超时重试不丢稿;注入 400 或转义 |
TC-A-09-E |
文章·去重 | 运营 | P2 | 异常 | tests/test-cases/admin.md#TC-A-09-E |
文章标题去重 | 重复创建被拦截提示标题已存在;空/超长 400 |
TC-A-10-E |
关系类型 | 运营 | P2 | 异常 | tests/test-cases/admin.md#TC-A-10-E |
关系类型 CRUD | 重名拒绝;停用被引用类型提示先解绑;注入 400/转义;家长端选择器同步生效仍正确 |
TC-A-11-E |
勋章 | 运营 | P2 | 异常 | tests/test-cases/admin.md#TC-A-11-E |
勋章管理;黑盒回归 | 重复 400/幂等;非法门槛 400;并发创建各自独立不串 |
TC-A-12-E |
供应商 | 运营 | P2 | 异常 | tests/test-cases/admin.md#TC-A-12-E |
供应商管理;黑盒回归 | 同手机号拒绝/可控覆盖;非法格式 400;必填缺失 400;列表 name=昵称正确 |
TC-A-13-E |
活动 | 运营 | P2 | 异常 | tests/test-cases/admin.md#TC-A-13-E |
活动审核撤回;黑盒回归 | 已发布再提交审核守卫拦截;非本人撤回 403;时间冲突 400;撤回退回草稿 |
TC-A-14-E |
知识库 | 运营 | P2 | 异常 | tests/test-cases/admin.md#TC-A-14-E |
知识库管理;黑盒回归 | 被引用删除提示先解绑;不存在 404;并发删除幂等 |
TC-A-15-E |
数据迁移 | 运营 | P3 | 异常 | tests/test-cases/admin.md#TC-A-15-E |
多数据源/SfmsDataSourceConfig | 中断回滚+明确错误非500;锁等待超时提示;重复执行幂等/提示已迁移 |
TC-A-16-E |
参数校验 | 运营 | P2 | 异常 | tests/test-cases/admin.md#TC-A-16-E |
统一 Result<T>+全局异常;黑盒回归 |
空 body 400 含具体字段提示;类型错配 400;超长 400;不再裸 500 |
TC-A-17-E |
/api/admin/report-parser/* | 运营 | P2 | 异常 | tests/test-cases/admin.md#TC-A-17-E |
/api/admin/report-parser/* | 重名类目拒绝;未注册路径 400;先注册再解析 |
TC-A-18-E |
优惠券/活动管理 | 运营 | P2 | 异常 | tests/test-cases/admin.md#TC-A-18-E |
优惠券/活动管理 | 时间冲突 400;名额超卖配置保护生效;重复提交幂等 |
TC-A-19-E |
内容安全 | 运营 | P2 | 异常 | tests/test-cases/admin.md#TC-A-19-E |
内容安全 | 超时降级非500;命中敏感词强制拦截不放行 |
TC-A-20-E |
GDPR 工单 | 运营 | P2 | 异常 | tests/test-cases/admin.md#TC-A-20-E |
GDPR 工单 | 并发安全:注销与导出按序执行不冲突;越权工单 403 |
TC-A-21-E |
网关/限流 | 运营 | P2 | 异常 | tests/test-cases/admin.md#TC-A-21-E |
网关/限流 | 白名单不被限流;非法阈值 400;规则生效可控 |
TC-A-22-E |
模型管理 | 运营 | P2 | 异常 | tests/test-cases/admin.md#TC-A-22-E |
模型管理 | 无回退方案拦截下线;非法版本 400;上下线版控正确 |
TC-A-23-E |
知识库 | 运营 | P2 | 异常 | tests/test-cases/admin.md#TC-A-23-E |
知识库 | 同步失败自动重试非500;并发 CRUD 乐观锁不互相覆盖 |
TC-A-01-P |
认证 | 运营 | P1 | 权限 | tests/test-cases/admin.md#TC-A-01-P |
AdminAuthController | 非 admin 角色访问管理端接口统一 401/403,不泄露后台数据 |
TC-A-02-P |
统计 | 运营 | P1 | 权限 | tests/test-cases/admin.md#TC-A-02-P |
StatsController | 非 admin 角色访问管理端接口统一 401/403,不泄露后台数据 |
TC-A-03-P |
方案管理 | 运营 | P1 | 权限 | tests/test-cases/admin.md#TC-A-03-P |
方案管理(全量) | 非 admin 角色访问管理端接口统一 401/403,不泄露后台数据 |
TC-A-04-P |
方案激活 | 运营 | P1 | 权限 | tests/test-cases/admin.md#TC-A-04-P |
方案激活 | 非 admin 角色访问管理端接口统一 401/403,不泄露后台数据 |
TC-A-05-P |
报告解析 | 运营 | P1 | 权限 | tests/test-cases/admin.md#TC-A-05-P |
AdminReportParserController | 非 admin 角色访问管理端接口统一 401/403,不泄露后台数据 |
TC-A-06-P |
报告解析 | 运营 | P1 | 权限 | tests/test-cases/admin.md#TC-A-06-P |
报告类型注册 | 非 admin 角色访问管理端接口统一 401/403,不泄露后台数据 |
TC-A-07-P |
报告解析 | 运营 | P2 | 权限 | tests/test-cases/admin.md#TC-A-07-P |
未知聚类自学习 | 非 admin 角色访问管理端接口统一 401/403,不泄露后台数据 |
TC-A-08-P |
文章 | 运营 | P1 | 权限 | tests/test-cases/admin.md#TC-A-08-P |
文章发布-审核 | 非 admin 角色访问管理端接口统一 401/403,不泄露后台数据 |
TC-A-09-P |
文章·去重 | 运营 | P1 | 权限 | tests/test-cases/admin.md#TC-A-09-P |
文章标题去重 | 非 admin 角色访问管理端接口统一 401/403,不泄露后台数据 |
TC-A-10-P |
关系类型 | 运营 | P1 | 权限 | tests/test-cases/admin.md#TC-A-10-P |
关系类型 CRUD | 非 admin 角色访问管理端接口统一 401/403,不泄露后台数据 |
TC-A-11-P |
勋章 | 运营 | P1 | 权限 | tests/test-cases/admin.md#TC-A-11-P |
勋章管理;黑盒回归 | 非 admin 角色访问管理端接口统一 401/403,不泄露后台数据 |
TC-A-12-P |
供应商 | 运营 | P1 | 权限 | tests/test-cases/admin.md#TC-A-12-P |
供应商管理;黑盒回归 | 非 admin 角色访问管理端接口统一 401/403,不泄露后台数据 |
TC-A-13-P |
活动 | 运营 | P1 | 权限 | tests/test-cases/admin.md#TC-A-13-P |
活动审核撤回;黑盒回归 | 非 admin 角色访问管理端接口统一 401/403,不泄露后台数据 |
TC-A-14-P |
知识库 | 运营 | P1 | 权限 | tests/test-cases/admin.md#TC-A-14-P |
知识库管理;黑盒回归 | 非 admin 角色访问管理端接口统一 401/403,不泄露后台数据 |
TC-A-15-P |
数据迁移 | 运营 | P2 | 权限 | tests/test-cases/admin.md#TC-A-15-P |
多数据源/SfmsDataSourceConfig | 非 admin 角色访问管理端接口统一 401/403,不泄露后台数据 |
TC-A-16-P |
参数校验 | 运营 | P1 | 权限 | tests/test-cases/admin.md#TC-A-16-P |
统一 Result<T>+全局异常;黑盒回归 |
非 admin 角色访问管理端接口统一 401/403,不泄露后台数据 |
TC-A-17-P |
/api/admin/report-parser/* | 运营 | P1 | 权限 | tests/test-cases/admin.md#TC-A-17-P |
/api/admin/report-parser/* | 非 admin 角色访问统一 401/403,不泄露后台数据 |
TC-A-18-P |
优惠券/活动管理 | 运营 | P1 | 权限 | tests/test-cases/admin.md#TC-A-18-P |
优惠券/活动管理 | 非 admin 角色访问统一 401/403,不泄露后台数据 |
TC-A-19-P |
内容安全 | 运营 | P1 | 权限 | tests/test-cases/admin.md#TC-A-19-P |
内容安全 | 非 admin 角色访问统一 401/403,不泄露后台数据 |
TC-A-20-P |
GDPR 工单 | 运营 | P1 | 权限 | tests/test-cases/admin.md#TC-A-20-P |
GDPR 工单 | 非 admin 角色访问统一 401/403,不泄露后台数据 |
TC-A-21-P |
网关/限流 | 运营 | P1 | 权限 | tests/test-cases/admin.md#TC-A-21-P |
网关/限流 | 非 admin 角色访问统一 401/403,不泄露后台数据 |
TC-A-22-P |
模型管理 | 运营 | P1 | 权限 | tests/test-cases/admin.md#TC-A-22-P |
模型管理 | 非 admin 角色访问统一 401/403,不泄露后台数据 |
TC-A-23-P |
知识库 | 运营 | P1 | 权限 | tests/test-cases/admin.md#TC-A-23-P |
知识库 | 非 admin 角色访问统一 401/403,不泄露后台数据 |
TC-A-25 |
维度/权重/上限配置 | 运营 | P1 | 功能 | tests/test-cases/admin.md#TC-A-25 |
DimensionConfigController/DimensionWeightController |
变更生效、后续能量按新配置;存量影响提示 |
TC-A-26 |
能量/归因权重 | 运营 | P1 | 功能 | tests/test-cases/admin.md#TC-A-26 |
EnergyController/AttributionWeights |
全局生效;变更写审计;概览/沙盘/天盘影响可观测 |
TC-A-25-E |
维度/权重/上限配置 | 运营 | P2 | 异常 | tests/test-cases/admin.md#TC-A-25-E |
DimensionConfigController | 1. 需确认/拒、不级联破坏存量 2. 400 拦截 3. 乐观锁/版本控制不互相覆盖 |
TC-A-26-E |
能量/归因权重 | 运营 | P2 | 异常 | tests/test-cases/admin.md#TC-A-26-E |
EnergyController/AttributionWeights |
1. 400 拦截 2. 展示兜底并提示、不静默错算 |
TC-A-25-P |
维度/权重/上限配置 | 运营 | P1 | 权限 | tests/test-cases/admin.md#TC-A-25-P |
DimensionConfigController | 非 admin 操作 403 |
TC-A-26-P |
能量/归因权重 | 运营 | P1 | 权限 | tests/test-cases/admin.md#TC-A-26-P |
EnergyController | 非 admin 改全局 403 |
TC-A-N01 |
配置CRUD | 运营 | P1 | 性能 | tests/test-cases/admin.md#TC-A-N01 |
配置管理 | 列表 ≤ 2s;CRUD 即时生效 |
TC-A-N02 |
报告解析中台 | 运营 | P0 | 性能 | tests/test-cases/admin.md#TC-A-N02 |
解析中台 | 单条 ≤ 30s;失败进未知聚类;监控可见积压 |
TC-A-N03 |
登录统计 | 运营 | P1 | 性能 | tests/test-cases/admin.md#TC-A-N03 |
统计聚合 | 聚合 ≤ 3s;支持分页/缓存;大数据不超时 |
TC-A-N04 |
限流熔断 | 运营 | P0 | 性能 | tests/test-cases/admin.md#TC-A-N04 |
限流熔断 | 触发限流/熔断返回 429/友好降级;系统不雪崩;恢复后正常 |
TC-A-N05 |
登录统计 | 运营 | P0 | 安全 | tests/test-cases/admin.md#TC-A-N05 |
后台鉴权 | 返回 401/403;后台不可被非管理员进入 |
TC-A-N06 |
文章审核 | 运营 | P1 | 安全 | tests/test-cases/admin.md#TC-A-N06 |
内容安全 | 内容转义/过滤;不执行脚本 |
TC-A-N07 |
内容安全 | 运营 | P0 | 安全 | tests/test-cases/admin.md#TC-A-N07 |
SSRF 防护 | 禁止内网地址(SSRF 防护);仅白名单外域;超时截断 |
TC-A-N08 |
知识库 | 运营 | P1 | 安全 | tests/test-cases/admin.md#TC-A-N08 |
上传校验 | 类型校验拒绝;不落盘执行 |
TC-A-N09 |
注销导出 | 运营 | P0 | 安全 | tests/test-cases/admin.md#TC-A-N09 |
数据导出合规 | 仅工单授权用户可导出;数据脱敏打包;操作留痕审计 |
TC-B-01 |
家长 | P0 | 功能 | 家长 A 已登录;AI 服务可用;知识库已加载 | tests/test-cases/butler.md#TC-B-01 |
- | B-01 / P-49 |
TC-B-02 |
家长 | P0 | 功能 | 家长已配置提醒项(用药 08:00、测评到期);推送通道可用 | tests/test-cases/butler.md#TC-B-02 |
- | B-02 / P-65 |
TC-B-04 |
家长 | P0 | 功能 | 孩子 B 已有入库报告(SC-P-23 / SC-P-91) | tests/test-cases/butler.md#TC-B-04 |
- | B-04 / P-23 |
TC-B-05 |
系统 | P0 | 安全 | 内容安全策略 / 敏感词库已配置 | tests/test-cases/butler.md#TC-B-05 |
- | B-05 / A-13 / T-28 |
TC-B-06 |
系统 | P0 | 异常 | AiGateway` 熔断 / 超时机制就绪;可切换 LangGraph 连通性 | tests/test-cases/butler.md#TC-B-06 |
- | B-06 / P-40 / P-49 |
TC-B-07 |
家长 | P1 | 功能 | 孩子 B 有五维数据与入库报告;B 有过敏记录 | tests/test-cases/butler.md#TC-B-07 |
- | B-07 / P-10 / P-13 / P-28 |
TC-B-09 |
家长 | P1 | 功能 | 家长已绑定规划师(SC-T-02);构造专业信号(持续异常 / 报告高风险) | tests/test-cases/butler.md#TC-B-09 |
- | B-09 / P-36 / X-11 |
TC-B-10 |
家长 | P1 | 功能 | 家庭成员已有能量 / 报告 / 任务 / 方案数据 | tests/test-cases/butler.md#TC-B-10 |
- | B-10 / P-68 / T-16 |
TC-B-11 |
家长 | P1 | 功能 | 已对报告发起过解读(TC-B-04),报告上下文在会话内可追溯 | tests/test-cases/butler.md#TC-B-11 |
- | B-11 / B-04 |
TC-B-12 |
家长 | P1 | 功能 | 规划师方案已激活(SC-P-46 / SC-T-05) | tests/test-cases/butler.md#TC-B-12 |
- | B-12 / P-46 / T-05 |
TC-B-01-E |
家长 | P2 | 异常 | AI 服务可用 | tests/test-cases/butler.md#TC-B-01-E |
- | B-01 |
TC-B-02-E |
家长 | P2 | 异常 | 提醒已配置;免打扰 22:00-08:00 | tests/test-cases/butler.md#TC-B-02-E |
- | B-02 |
TC-B-04-E |
家长 | P2 | 异常 | 孩子 B 报告状态可构造 | tests/test-cases/butler.md#TC-B-04-E |
- | B-04 |
TC-B-05-E |
系统 | P1 | 安全 | 敏感词库已配置 | tests/test-cases/butler.md#TC-B-05-E |
- | B-05 |
TC-B-06-E |
系统 | P1 | 异常 | 可切换连通性 | tests/test-cases/butler.md#TC-B-06-E |
- | B-06 |
TC-B-07-E |
家长 | P2 | 异常 | 孩子 B 数据状态可构造 | tests/test-cases/butler.md#TC-B-07-E |
- | B-07 |
TC-B-09-E |
家长 | P2 | 异常 | 绑定关系可构造 | tests/test-cases/butler.md#TC-B-09-E |
- | B-09 |
TC-B-10-E |
家长 | P2 | 异常 | 家庭成员数据可构造 | tests/test-cases/butler.md#TC-B-10-E |
- | B-10 |
TC-B-11-E |
家长 | P3 | 异常 | 报告上下文可构造 | tests/test-cases/butler.md#TC-B-11-E |
- | B-11 |
TC-B-12-E |
家长 | P2 | 异常 | 方案状态可构造 | tests/test-cases/butler.md#TC-B-12-E |
- | B-12 |
TC-B-01-P |
家长 | P1 | 权限 | 家庭1 + 无关家庭 F9;孩子 / 服务商 / 游客账号 | tests/test-cases/butler.md#TC-B-01-P |
- | B-01 |
TC-B-02-P |
家长 | P1 | 权限 | 家庭1 + F9 | tests/test-cases/butler.md#TC-B-02-P |
- | B-02 |
TC-B-04-P |
家长 | P1 | 权限 | 家庭1(A+B)+ F9(有报告);规划师 T 仅绑定 F2 | tests/test-cases/butler.md#TC-B-04-P |
- | B-04 |
TC-B-05-P |
系统 | P0 | 权限 | 各角色账号 | tests/test-cases/butler.md#TC-B-05-P |
- | B-05 |
TC-B-06-P |
系统 | P2 | 权限 | 各角色账号 | tests/test-cases/butler.md#TC-B-06-P |
- | B-06 |
TC-B-07-P |
家长 | P1 | 权限 | 家庭1(A+B)+ F9 | tests/test-cases/butler.md#TC-B-07-P |
- | B-07 |
TC-B-09-P |
家长 | P1 | 权限 | 家长 A 仅绑定规划师 T1;T2 未绑定 | tests/test-cases/butler.md#TC-B-09-P |
- | B-09 |
TC-B-10-P |
家长 | P1 | 权限 | 家庭1 + F9 | tests/test-cases/butler.md#TC-B-10-P |
- | B-10 |
TC-B-11-P |
家长 | P1 | 权限 | 家庭1 + F9 报告 | tests/test-cases/butler.md#TC-B-11-P |
- | B-11 |
TC-B-12-P |
家长 | P1 | 权限 | 家庭1 + F9 方案 | tests/test-cases/butler.md#TC-B-12-P |
- | B-12 |
TC-C-01 |
权限/双角色 | 孩子 | P0 | 权限 | tests/test-cases/child.md#TC-C-01 |
双角色铁律:孩子端不能切家长 | 进入孩子端首页;无切换家长入口;直接拼家长路由被 role 校验拦截 |
TC-C-02 |
任务 | 孩子 | P0 | 功能 | tests/test-cases/child.md#TC-C-02 |
TaskController | 状态→待家长审核;完成动作写入记录;重复提交不重复计分 |
TC-C-03 |
小游戏 | 孩子 | P1 | 功能 | tests/test-cases/child.md#TC-C-03 |
pages/games/* | 得分按规则计算;积分/能量到账;成绩入榜;中途退出不计分 |
TC-C-04 |
心愿 | 孩子 | P1 | 功能 | tests/test-cases/child.md#TC-C-04 |
WishController | 心愿进入家长待审批列表;积分不足创建拦截 |
TC-C-05 |
心愿 | 孩子 | P1 | 功能 | tests/test-cases/child.md#TC-C-05 |
RewardController | 兑换成功,积分扣减正确;驳回后不可兑换 |
TC-C-06 |
能量 | 孩子 | P1 | 功能 | tests/test-cases/child.md#TC-C-06 |
EnergyController | 显示个人能量值;有增量且流水可追溯;能量不为负 |
TC-C-07 |
报告/权限 | 孩子 | P1 | 权限 | tests/test-cases/child.md#TC-C-07 |
报告查看权限隔离 | 可见报告内容;UI 无编辑/删除入口;直接调删除接口被 role 校验拒绝(403/401) |
TC-C-08 |
打卡/方案 | 孩子 | P0 | 功能 | tests/test-cases/child.md#TC-C-08 |
健康打卡/方案进度 | 打卡成功,方案 completedDays+1;重复打卡不重复计数(幂等) |
TC-C-09 |
勋章 | 孩子 | P2 | 功能 | tests/test-cases/child.md#TC-C-09 |
RewardController | 显示已获得/未获得勋章及进度;未解锁不显示领取 |
TC-C-10 |
勋章提醒 | 孩子 | P2 | 功能 | tests/test-cases/child.md#TC-C-10 |
MedalController | 达成→解锁+推送;重复达成不重复发推送 |
TC-C-11 |
成长记录 | 孩子 | P1 | 功能 | tests/test-cases/child.md#TC-C-11 |
GrowthController | 仅展示本人数据;其他成员数据不可见 |
TC-C-12 |
食谱查看 | 孩子 | P1 | 功能 | tests/test-cases/child.md#TC-C-12 |
饮食推荐 | 展示早/午/晚;无食谱显示空态不 500 |
TC-C-13 |
AI 对话 | 孩子 | P1 | 功能 | tests/test-cases/child.md#TC-C-13 |
AIChatController | 返回适龄回答;敏感/不适龄内容被过滤 |
TC-C-14 |
任务重做 | 孩子 | P1 | 功能 | tests/test-cases/child.md#TC-C-14 |
TaskController | 驳回后可重做;重做提交进入待审核 |
TC-C-15 |
消息接收 | 孩子 | P1 | 功能 | tests/test-cases/child.md#TC-C-15 |
消息服务 | 仅见发给自己的消息;越权消息不可见 |
TC-C-16 |
个人资料 | 孩子 | P1 | 功能 | tests/test-cases/child.md#TC-C-16 |
AuthController | 敏感字段(如关系)家长代管不可改 |
TC-C-17 |
退出 | 孩子 | P1 | 功能 | tests/test-cases/child.md#TC-C-17 |
AuthController | 退出清除本地缓存;回登录页 |
TC-C-18 |
设备校验 | 孩子 | P2 | 功能 | tests/test-cases/child.md#TC-C-18 |
AuthController | 异常设备触发二次验证;通过后放行 |
TC-C-19 |
消息服务 | 孩子 | P1 | 功能 | tests/test-cases/child.md#TC-C-19 |
消息服务 | 达成目标:收通知;边界:越权消息不可见 |
TC-C-20 |
GrowthController | 孩子 | P1 | 功能 | tests/test-cases/child.md#TC-C-20 |
GrowthController | 达成目标:看自己档案;边界:未成年人导出受限,需家长代办 |
TC-C-21 |
舌诊情绪识别 | 孩子 | P1 | 功能 | tests/test-cases/child.md#TC-C-21 |
舌诊情绪识别 | 达成目标:拍照上传;边界:模糊/非照片拒绝;隐私标注 |
TC-C-22 |
MallController | 孩子 | P1 | 功能 | tests/test-cases/child.md#TC-C-22 |
MallController | 达成目标:用积分换;边界:积分不足拦截;重复兑换幂等 |
TC-C-23 |
客服 | 孩子 | P1 | 功能 | tests/test-cases/child.md#TC-C-23 |
客服 | 达成目标:提反馈;边界:内容适龄过滤;敏感信息脱敏 |
TC-C-01-E |
权限/双角色 | 孩子 | P2 | 异常 | tests/test-cases/child.md#TC-C-01-E |
双角色铁律:孩子端不能切家长 | 缺失/过期 token 统一 401 跳登录;切换/家长路由被 role 校验 403 拦截;孩子端无任何切回家长入口;模拟登录仅测试环境生效 |
TC-C-02-E |
任务 | 孩子 | P2 | 异常 | tests/test-cases/child.md#TC-C-02-E |
TaskController | 并发双点幂等仅计 1 次、仅 1 条流水;超期提交被拒;驳回→重做→再提交仅在重做后计 1 次 |
TC-C-03-E |
小游戏 | 孩子 | P2 | 异常 | tests/test-cases/child.md#TC-C-03-E |
pages/games/* | 异常分数 400 不计入;断网不计分不卡死;重复上报幂等不重复入榜 |
TC-C-04-E |
心愿 | 孩子 | P2 | 异常 | tests/test-cases/child.md#TC-C-04-E |
WishController | 余额不足创建拦截;超长/注入 400 校验;重复创建提示已存在不双建 |
TC-C-05-E |
心愿 | 孩子 | P2 | 异常 | tests/test-cases/child.md#TC-C-05-E |
RewardController | 余额不足拦截且不扣负;已驳回提示不可兑换;并发幂等仅扣 1 次 |
TC-C-06-E |
能量 | 孩子 | P2 | 异常 | tests/test-cases/child.md#TC-C-06-E |
EnergyController | 超时降级空态提示非 500;权重 0 占比兜底(0%)显示不崩;能量不为负 |
TC-C-07-E |
报告/权限 | 孩子 | P2 | 异常 | tests/test-cases/child.md#TC-C-07-E |
报告查看权限隔离 | 删除/编辑被 role 校验 403 拒绝;孩子端 UI 无编辑/删除入口;报告内容不被改动 |
TC-C-08-E |
打卡/方案 | 孩子 | P2 | 异常 | tests/test-cases/child.md#TC-C-08-E |
健康打卡/方案进度 | 超时回滚不残半任务、进度不 +1;重复打卡幂等不重复计数;非本人任务 403 |
TC-C-09-E |
勋章 | 孩子 | P3 | 异常 | tests/test-cases/child.md#TC-C-09-E |
RewardController | 重复达成不重复发推送/勋章;未达成领取 400/403 拒绝 |
TC-C-10-E |
勋章提醒 | 孩子 | P3 | 异常 | tests/test-cases/child.md#TC-C-10-E |
MedalController | 重复达成幂等仅 1 次推送;数据缺失降级不推送不 500 |
TC-C-11-E |
成长记录 | 孩子 | P2 | 异常 | tests/test-cases/child.md#TC-C-11-E |
GrowthController | 关联已删项跳过不报错;其他成员数据 403 不可见 |
TC-C-12-E |
食谱查看 | 孩子 | P2 | 异常 | tests/test-cases/child.md#TC-C-12-E |
饮食推荐 | 超时 Fallback 通用食谱+提示非 500;无食谱空态不 500 |
TC-C-13-E |
AI 对话 | 孩子 | P2 | 异常 | tests/test-cases/child.md#TC-C-13-E |
AIChatController | 不适龄/敏感词被过滤返回适龄话术;LangGraph 不可用 Fallback 兜底、多轮连续 |
TC-C-14-E |
任务重做 | 孩子 | P2 | 异常 | tests/test-cases/child.md#TC-C-14-E |
TaskController | 非驳回态重做入口不可见/拦截;重做提交进入待审核仅计 1 次 |
TC-C-15-E |
消息接收 | 孩子 | P2 | 异常 | tests/test-cases/child.md#TC-C-15-E |
消息服务 | 越权消息 403 不可见;不存在 404;列表分页正常 |
TC-C-16-E |
个人资料 | 孩子 | P2 | 异常 | tests/test-cases/child.md#TC-C-16-E |
AuthController | 代管字段 403 不可改;昵称注入/超长 400 校验 |
TC-C-17-E |
退出 | 孩子 | P2 | 异常 | tests/test-cases/child.md#TC-C-17-E |
AuthController | 旧 token 失效 401;网络中断退出仍清本地缓存、下次需重登 |
TC-C-18-E |
设备校验 | 孩子 | P3 | 异常 | tests/test-cases/child.md#TC-C-18-E |
AuthController | 异常设备二次验证/拦截;旧设备 token 失效 401 |
TC-C-19-E |
消息服务 | 孩子 | P2 | 异常 | tests/test-cases/child.md#TC-C-19-E |
消息服务 | 不存在 404;越权标记 403 不生效 |
TC-C-20-E |
GrowthController | 孩子 | P2 | 异常 | tests/test-cases/child.md#TC-C-20-E |
GrowthController | 未成年导出 403 需家长代办;他人档案 403 不可见 |
TC-C-21-E |
舌诊情绪识别 | 孩子 | P2 | 异常 | tests/test-cases/child.md#TC-C-21-E |
舌诊情绪识别 | 非照片/模糊拒绝提示『请上传清晰舌苔照』;低置信度提示重拍;隐私标注不外露 |
TC-C-22-E |
MallController | 孩子 | P2 | 异常 | tests/test-cases/child.md#TC-C-22-E |
MallController | 余额不足拦截不扣负;并发仅 1 次成功;重复兑换幂等仅 1 条 |
TC-C-23-E |
客服 | 孩子 | P2 | 异常 | tests/test-cases/child.md#TC-C-23-E |
客服 | 敏感信息脱敏存储;附件超限 400『附件不超过 10MB』 |
TC-C-01-P |
权限/双角色 | 孩子 | P1 | 权限 | tests/test-cases/child.md#TC-C-01-P |
双角色铁律:孩子端不能切家长 | 孩子端无编辑/删除/切家长入口;直接调用被 role 校验拒绝(403/401),不越权操作家庭数据 |
TC-C-02-P |
任务 | 孩子 | P1 | 权限 | tests/test-cases/child.md#TC-C-02-P |
TaskController | 孩子端无编辑/删除/切家长入口;直接调用被 role 校验拒绝(403/401),不越权操作家庭数据 |
TC-C-03-P |
小游戏 | 孩子 | P1 | 权限 | tests/test-cases/child.md#TC-C-03-P |
pages/games/* | 孩子端无编辑/删除/切家长入口;直接调用被 role 校验拒绝(403/401),不越权操作家庭数据 |
TC-C-04-P |
心愿 | 孩子 | P1 | 权限 | tests/test-cases/child.md#TC-C-04-P |
WishController | 孩子端无编辑/删除/切家长入口;直接调用被 role 校验拒绝(403/401),不越权操作家庭数据 |
TC-C-05-P |
心愿 | 孩子 | P1 | 权限 | tests/test-cases/child.md#TC-C-05-P |
RewardController | 孩子端无编辑/删除/切家长入口;直接调用被 role 校验拒绝(403/401),不越权操作家庭数据 |
TC-C-06-P |
能量 | 孩子 | P1 | 权限 | tests/test-cases/child.md#TC-C-06-P |
EnergyController | 孩子端无编辑/删除/切家长入口;直接调用被 role 校验拒绝(403/401),不越权操作家庭数据 |
TC-C-07-P |
报告/权限 | 孩子 | P1 | 权限 | tests/test-cases/child.md#TC-C-07-P |
报告查看权限隔离 | 孩子端无编辑/删除/切家长入口;直接调用被 role 校验拒绝(403/401),不越权操作家庭数据 |
TC-C-08-P |
打卡/方案 | 孩子 | P1 | 权限 | tests/test-cases/child.md#TC-C-08-P |
健康打卡/方案进度 | 孩子端无编辑/删除/切家长入口;直接调用被 role 校验拒绝(403/401),不越权操作家庭数据 |
TC-C-09-P |
勋章 | 孩子 | P2 | 权限 | tests/test-cases/child.md#TC-C-09-P |
RewardController | 孩子端无编辑/删除/切家长入口;直接调用被 role 校验拒绝(403/401),不越权操作家庭数据 |
TC-C-10-P |
勋章提醒 | 孩子 | P2 | 权限 | tests/test-cases/child.md#TC-C-10-P |
MedalController | 孩子端无编辑/删除/切家长入口;直接调用被 role 校验拒绝(403/401),不越权操作家庭数据 |
TC-C-11-P |
成长记录 | 孩子 | P1 | 权限 | tests/test-cases/child.md#TC-C-11-P |
GrowthController | 孩子端无编辑/删除/切家长入口;直接调用被 role 校验拒绝(403/401),不越权操作家庭数据 |
TC-C-12-P |
食谱查看 | 孩子 | P1 | 权限 | tests/test-cases/child.md#TC-C-12-P |
饮食推荐 | 孩子端无编辑/删除/切家长入口;直接调用被 role 校验拒绝(403/401),不越权操作家庭数据 |
TC-C-13-P |
AI 对话 | 孩子 | P1 | 权限 | tests/test-cases/child.md#TC-C-13-P |
AIChatController | 孩子端无编辑/删除/切家长入口;直接调用被 role 校验拒绝(403/401),不越权操作家庭数据 |
TC-C-14-P |
任务重做 | 孩子 | P1 | 权限 | tests/test-cases/child.md#TC-C-14-P |
TaskController | 孩子端无编辑/删除/切家长入口;直接调用被 role 校验拒绝(403/401),不越权操作家庭数据 |
TC-C-15-P |
消息接收 | 孩子 | P1 | 权限 | tests/test-cases/child.md#TC-C-15-P |
消息服务 | 孩子端无编辑/删除/切家长入口;直接调用被 role 校验拒绝(403/401),不越权操作家庭数据 |
TC-C-16-P |
个人资料 | 孩子 | P1 | 权限 | tests/test-cases/child.md#TC-C-16-P |
AuthController | 孩子端无编辑/删除/切家长入口;直接调用被 role 校验拒绝(403/401),不越权操作家庭数据 |
TC-C-17-P |
退出 | 孩子 | P1 | 权限 | tests/test-cases/child.md#TC-C-17-P |
AuthController | 孩子端无编辑/删除/切家长入口;直接调用被 role 校验拒绝(403/401),不越权操作家庭数据 |
TC-C-18-P |
设备校验 | 孩子 | P2 | 权限 | tests/test-cases/child.md#TC-C-18-P |
AuthController | 孩子端无编辑/删除/切家长入口;直接调用被 role 校验拒绝(403/401),不越权操作家庭数据 |
TC-C-19-P |
消息服务 | 孩子 | P1 | 权限 | tests/test-cases/child.md#TC-C-19-P |
消息服务 | 孩子端无编辑/删除/切家长入口;直接调用被 role 校验拒绝(403/401),不越权操作家庭数据 |
TC-C-20-P |
GrowthController | 孩子 | P1 | 权限 | tests/test-cases/child.md#TC-C-20-P |
GrowthController | 孩子端无编辑/删除/切家长入口;直接调用被 role 校验拒绝(403/401),不越权操作家庭数据 |
TC-C-21-P |
舌诊情绪识别 | 孩子 | P1 | 权限 | tests/test-cases/child.md#TC-C-21-P |
舌诊情绪识别 | 孩子端无编辑/删除/切家长入口;直接调用被 role 校验拒绝(403/401),不越权操作家庭数据 |
TC-C-22-P |
MallController | 孩子 | P1 | 权限 | tests/test-cases/child.md#TC-C-22-P |
MallController | 孩子端无编辑/删除/切家长入口;直接调用被 role 校验拒绝(403/401),不越权操作家庭数据 |
TC-C-23-P |
客服 | 孩子 | P1 | 权限 | tests/test-cases/child.md#TC-C-23-P |
客服 | 孩子端无编辑/删除/切家长入口;直接调用被 role 校验拒绝(403/401),不越权操作家庭数据 |
TC-C-24 |
能量/小游戏·任务 | 孩子 | P1 | 功能 | tests/test-cases/child.md#TC-C-24 |
GameRecordService/TaskController |
对应维度 +amount、sourceType=game/task;B 自身能量页看到增长与流水 |
TC-C-25 |
能量/方案打卡 | 孩子 | P1 | 功能 | tests/test-cases/child.md#TC-C-25 |
GrowthTaskService | GrowthTaskService 打卡对应维度+;任务进度与能量同步刷新 |
TC-C-24-E |
能量/小游戏·任务 | 孩子 | P2 | 异常 | tests/test-cases/child.md#TC-C-24-E |
GameRecordService | 1. 异常分数拦截不写能量 2. 重复上报幂等不重复加 |
TC-C-25-E |
能量/方案打卡 | 孩子 | P2 | 异常 | tests/test-cases/child.md#TC-C-25-E |
GrowthTaskService | 1. 按业务允/拒、断言一致 2. 重复打卡幂等不重复加 3. 并发不重复计分 |
TC-C-24-P |
能量/小游戏·任务 | 孩子 | P1 | 权限 | tests/test-cases/child.md#TC-C-24-P |
JwtInterceptor`+role | 1. 他人能量 403 2. 孩子端无编辑/扣减入口、直接调被拒 |
TC-C-25-P |
能量/方案打卡 | 孩子 | P1 | 权限 | tests/test-cases/child.md#TC-C-25-P |
GrowthTaskService | 1. 非本人方案任务 403 2. 他人进度不可见 |
TC-C-N01 |
任务打卡 | 孩子 | P1 | 性能 | tests/test-cases/child.md#TC-C-N01 |
TaskController | 重复提交幂等;并发不重复计分;响应 ≤ 1s |
TC-C-N02 |
消息通知 | 孩子 | P2 | 性能 | tests/test-cases/child.md#TC-C-N02 |
消息中心 | 列表渲染 ≤ 1.5s;标记已读即时 |
TC-C-N03 |
孩子端 | 孩子 | P1 | 兼容 | tests/test-cases/child.md#TC-C-N03 |
孩子端 | 功能一致;无错位;低龄设备流畅 |
TC-C-N04 |
只读报告 | 孩子 | P2 | 兼容 | tests/test-cases/child.md#TC-C-N04 |
报告前端 | 图表自适应;无溢出;可读 |
TC-C-N05 |
心愿 | 孩子 | P1 | 安全 | tests/test-cases/child.md#TC-C-N05 |
心愿鉴权 | 服务端校验归属;403/拒绝;孩子不可越权操作他人 |
TC-C-N06 |
消息通知 | 孩子 | P2 | 安全 | tests/test-cases/child.md#TC-C-N06 |
消息渲染 | 内容转义渲染;不执行脚本 |
TC-C-N07 |
孩子端 | 孩子 | P0 | 安全 | tests/test-cases/child.md#TC-C-N07 |
双角色铁律 | 一律 401/403;孩子端不可切回家长铁律生效 |
TC-X-01 |
规划师 | P0 | 功能 | 已绑定家庭+孩子 B;募极生物 PDF | tests/test-cases/cross-role-e2e.md#TC-X-01 |
- | T-3 / P-10 |
TC-X-02 |
规划师 | P0 | 功能 | X-01 草稿 | tests/test-cases/cross-role-e2e.md#TC-X-02 |
- | T-4 |
TC-X-03 |
家长 | P0 | 功能 | 孩子 B 有报告;已购会员 | tests/test-cases/cross-role-e2e.md#TC-X-03 |
- | P-13 |
TC-X-04 |
规划师 | P0 | 功能 | X-03 方案 generated | tests/test-cases/cross-role-e2e.md#TC-X-04 |
- | T-6 / T-7 |
TC-X-05 |
孩子 | P0 | 功能 | X-04 已生成方案任务 | tests/test-cases/cross-role-e2e.md#TC-X-05 |
- | C-7 / C-2 |
TC-X-06 |
规划师 | P0 | 功能 | X-05 已提交 | tests/test-cases/cross-role-e2e.md#TC-X-06 |
- | T-9 / P-06 |
TC-X-07 |
运营 | P1 | 功能 | 以上步骤已执行 | tests/test-cases/cross-role-e2e.md#TC-X-07 |
- | A-02 |
TC-X-08 |
多角色 | P0 | 异常 | X-04 已 active 方案 | tests/test-cases/cross-role-e2e.md#TC-X-08 |
- | T-8 / P-09a / C-8 |
TC-X-09 |
多角色 | P0 | 功能 | 家长已生成方案(generated) | tests/test-cases/cross-role-e2e.md#TC-X-09 |
- | P-44 / T-06 / T-07 |
TC-X-10 |
多角色 | P2 | 功能 | 同一孩子多次上传同类型报告 | tests/test-cases/cross-role-e2e.md#TC-X-10 |
- | P-25 / T-21 |
TC-X-11 |
多角色 | P1 | 功能 | 跨角色消息配置就绪 | tests/test-cases/cross-role-e2e.md#TC-X-11 |
- | P-65 / T-19 / C-15 |
TC-X-12 |
多角色 | P1 | 功能 | 家长未购会员 | tests/test-cases/cross-role-e2e.md#TC-X-12 |
- | P-58 / P-16 |
TC-X-13 |
跨角色 | P1 | 功能 | 已登录(默认 跨角色);相关前置数据就绪 | tests/test-cases/cross-role-e2e.md#TC-X-13 |
- | X-13 |
TC-X-14 |
跨角色 | P1 | 功能 | 已登录(默认 跨角色);相关前置数据就绪 | tests/test-cases/cross-role-e2e.md#TC-X-14 |
- | X-14 |
TC-X-15 |
跨角色 | P1 | 功能 | 已登录(默认 跨角色);相关前置数据就绪 | tests/test-cases/cross-role-e2e.md#TC-X-15 |
- | X-15 |
TC-X-16 |
跨角色 | P0 | 功能 | 已登录(默认 跨角色);相关前置数据就绪 | tests/test-cases/cross-role-e2e.md#TC-X-16 |
- | X-16 |
TC-X-17 |
跨角色 | P1 | 功能 | 已登录(默认 跨角色);相关前置数据就绪 | tests/test-cases/cross-role-e2e.md#TC-X-17 |
- | X-17 |
TC-X-18 |
跨角色 | P1 | 功能 | 已登录(默认 跨角色);相关前置数据就绪 | tests/test-cases/cross-role-e2e.md#TC-X-18 |
- | X-18 |
TC-X-01-E |
规划师 | P2 | 异常 | 已绑定家庭+孩子 B;募极生物 PDF | tests/test-cases/cross-role-e2e.md#TC-X-01-E |
- | T-3 / P-10 |
TC-X-02-E |
规划师 | P2 | 异常 | X-01 草稿 | tests/test-cases/cross-role-e2e.md#TC-X-02-E |
- | T-4 |
TC-X-03-E |
家长 | P2 | 异常 | 孩子 B 有报告;已购会员 | tests/test-cases/cross-role-e2e.md#TC-X-03-E |
- | P-13 |
TC-X-04-E |
规划师 | P2 | 异常 | X-03 方案 generated | tests/test-cases/cross-role-e2e.md#TC-X-04-E |
- | T-6 / T-7 |
TC-X-05-E |
孩子 | P2 | 异常 | X-04 已生成方案任务 | tests/test-cases/cross-role-e2e.md#TC-X-05-E |
- | C-7 / C-2 |
TC-X-06-E |
规划师 | P2 | 异常 | X-05 已提交 | tests/test-cases/cross-role-e2e.md#TC-X-06-E |
- | T-9 / P-06 |
TC-X-07-E |
运营 | P2 | 异常 | 以上步骤已执行 | tests/test-cases/cross-role-e2e.md#TC-X-07-E |
- | A-02 |
TC-X-08-E |
多角色 | P2 | 异常 | X-04 已 active 方案 | tests/test-cases/cross-role-e2e.md#TC-X-08-E |
- | T-8 / P-09a / C-8 |
TC-X-09-E |
多角色 | P2 | 异常 | 家长已生成方案(generated) | tests/test-cases/cross-role-e2e.md#TC-X-09-E |
- | P-44 / T-06 / T-07 |
TC-X-10-E |
多角色 | P3 | 异常 | 同一孩子多次上传同类型报告 | tests/test-cases/cross-role-e2e.md#TC-X-10-E |
- | P-25 / T-21 |
TC-X-11-E |
多角色 | P2 | 异常 | 跨角色消息配置就绪 | tests/test-cases/cross-role-e2e.md#TC-X-11-E |
- | P-65 / T-19 / C-15 |
TC-X-12-E |
多角色 | P2 | 异常 | 家长未购会员 | tests/test-cases/cross-role-e2e.md#TC-X-12-E |
- | P-58 / P-16 |
TC-X-13-E |
跨角色 | P2 | 异常 | 已登录(默认 跨角色);相关前置数据就绪 | tests/test-cases/cross-role-e2e.md#TC-X-13-E |
- | X-13 |
TC-X-14-E |
跨角色 | P2 | 异常 | 已登录(默认 跨角色);相关前置数据就绪 | tests/test-cases/cross-role-e2e.md#TC-X-14-E |
- | X-14 |
TC-X-15-E |
跨角色 | P2 | 异常 | 已登录(默认 跨角色);相关前置数据就绪 | tests/test-cases/cross-role-e2e.md#TC-X-15-E |
- | X-15 |
TC-X-16-E |
跨角色 | P1 | 异常 | 已登录(默认 跨角色);相关前置数据就绪 | tests/test-cases/cross-role-e2e.md#TC-X-16-E |
- | X-16 |
TC-X-17-E |
跨角色 | P2 | 异常 | 已登录(默认 跨角色);相关前置数据就绪 | tests/test-cases/cross-role-e2e.md#TC-X-17-E |
- | X-17 |
TC-X-18-E |
跨角色 | P2 | 异常 | 已登录(默认 跨角色);相关前置数据就绪 | tests/test-cases/cross-role-e2e.md#TC-X-18-E |
- | X-18 |
TC-X-01-P |
规划师 | P1 | 权限 | 已绑定家庭+孩子 B;募极生物 PDF | tests/test-cases/cross-role-e2e.md#TC-X-01-P |
- | T-3 / P-10 |
TC-X-02-P |
规划师 | P1 | 权限 | X-01 草稿 | tests/test-cases/cross-role-e2e.md#TC-X-02-P |
- | T-4 |
TC-X-03-P |
家长 | P1 | 权限 | 孩子 B 有报告;已购会员 | tests/test-cases/cross-role-e2e.md#TC-X-03-P |
- | P-13 |
TC-X-04-P |
规划师 | P1 | 权限 | X-03 方案 generated | tests/test-cases/cross-role-e2e.md#TC-X-04-P |
- | T-6 / T-7 |
TC-X-05-P |
孩子 | P1 | 权限 | X-04 已生成方案任务 | tests/test-cases/cross-role-e2e.md#TC-X-05-P |
- | C-7 / C-2 |
TC-X-06-P |
规划师 | P1 | 权限 | X-05 已提交 | tests/test-cases/cross-role-e2e.md#TC-X-06-P |
- | T-9 / P-06 |
TC-X-07-P |
运营 | P1 | 权限 | 以上步骤已执行 | tests/test-cases/cross-role-e2e.md#TC-X-07-P |
- | A-02 |
TC-X-08-P |
多角色 | P1 | 权限 | X-04 已 active 方案 | tests/test-cases/cross-role-e2e.md#TC-X-08-P |
- | T-8 / P-09a / C-8 |
TC-X-09-P |
多角色 | P1 | 权限 | 家长已生成方案(generated) | tests/test-cases/cross-role-e2e.md#TC-X-09-P |
- | P-44 / T-06 / T-07 |
TC-X-10-P |
多角色 | P2 | 权限 | 同一孩子多次上传同类型报告 | tests/test-cases/cross-role-e2e.md#TC-X-10-P |
- | P-25 / T-21 |
TC-X-11-P |
多角色 | P1 | 权限 | 跨角色消息配置就绪 | tests/test-cases/cross-role-e2e.md#TC-X-11-P |
- | P-65 / T-19 / C-15 |
TC-X-12-P |
多角色 | P1 | 权限 | 家长未购会员 | tests/test-cases/cross-role-e2e.md#TC-X-12-P |
- | P-58 / P-16 |
TC-X-13-P |
跨角色 | P1 | 权限 | 已登录(默认 跨角色);相关前置数据就绪 | tests/test-cases/cross-role-e2e.md#TC-X-13-P |
- | X-13 |
TC-X-14-P |
跨角色 | P1 | 权限 | 已登录(默认 跨角色);相关前置数据就绪 | tests/test-cases/cross-role-e2e.md#TC-X-14-P |
- | X-14 |
TC-X-15-P |
跨角色 | P1 | 权限 | 已登录(默认 跨角色);相关前置数据就绪 | tests/test-cases/cross-role-e2e.md#TC-X-15-P |
- | X-15 |
TC-X-16-P |
跨角色 | P0 | 权限 | 已登录(默认 跨角色);相关前置数据就绪 | tests/test-cases/cross-role-e2e.md#TC-X-16-P |
- | X-16 |
TC-X-17-P |
跨角色 | P1 | 权限 | 已登录(默认 跨角色);相关前置数据就绪 | tests/test-cases/cross-role-e2e.md#TC-X-17-P |
- | X-17 |
TC-X-18-P |
跨角色 | P1 | 权限 | 已登录(默认 跨角色);相关前置数据就绪 | tests/test-cases/cross-role-e2e.md#TC-X-18-P |
- | X-18 |
TC-X-19 |
跨角色 | P0 | 功能 | 家庭1(A+B+C)、绑定家庭 F2(T)、无关家庭 F9 | tests/test-cases/cross-role-e2e.md#TC-X-19 |
- | X-19 |
TC-X-20 |
跨角色 | P0 | 功能 | 成员 B 混合来源流水(任务/打卡/心愿扣减/手动) | tests/test-cases/cross-role-e2e.md#TC-X-20 |
- | X-20 |
TC-X-21 |
跨角色 | P0 | 功能 | B 某维度当日未触顶;多触发同时到达 | tests/test-cases/cross-role-e2e.md#TC-X-21 |
- | X-21 |
TC-X-19-E |
跨角色 | P1 | 异常 | 家庭1 / F2 / F9 | tests/test-cases/cross-role-e2e.md#TC-X-19-E |
- | X-19 |
TC-X-20-E |
跨角色 | P1 | 异常 | B 混合流水 + 造"不一致断点""负流水无对应" | tests/test-cases/cross-role-e2e.md#TC-X-20-E |
- | X-20 |
TC-X-21-E |
跨角色 | P1 | 异常 | B 维度当日接近上限 | tests/test-cases/cross-role-e2e.md#TC-X-21-E |
- | X-21 |
TC-X-19-P |
跨角色 | P0 | 权限 | 家庭1 / F2 / F9 | tests/test-cases/cross-role-e2e.md#TC-X-19-P |
- | X-19 |
TC-X-20-P |
跨角色 | P1 | 权限 | 家庭1 + F9 | tests/test-cases/cross-role-e2e.md#TC-X-20-P |
- | X-20 |
TC-X-21-P |
跨角色 | P1 | 权限 | 家庭1 + F9 | tests/test-cases/cross-role-e2e.md#TC-X-21-P |
- | X-21 |
TC-X-22 |
跨角色 | P0 | 功能 | 家庭1(家长A+孩子B);CF 规则已配置:任务审核通过 +20、方案任务打卡 +10、商城下单满 99 +50;B 当日 CF 与五维能量均未触顶;已装各端 | tests/test-cases/cross-role-e2e.md#TC-X-22 |
- | X-22 / P-10、C-05、X-07、T-6 |
TC-X-22-E |
跨角色 | P1 | 异常 | 家庭1;CF 规则可配活动倍率/日上限;可注入规则未配置、超时 | tests/test-cases/cross-role-e2e.md#TC-X-22-E |
- | X-22 / P-87、C-25、P-89、P-93 |
TC-X-22-E2 |
跨角色 | P2 | 异常 | 规则存在但值为 0;存在消耗型产出点(心愿兑换/商城兑换) | tests/test-cases/cross-role-e2e.md#TC-X-22-E2 |
- | X-22 / P-13、C-04、X-12 |
TC-X-22-P |
跨角色 | P1 | 权限 | 家庭1(A+B)、无关家庭 F9、游客账号、孩子/服务商/运营账号 | tests/test-cases/cross-role-e2e.md#TC-X-22-P |
- | X-22 / P-77、X-07 |
TC-X-N01 |
跨角色 | P0 | 性能 | 多家庭并发(≥10 家庭) | tests/test-cases/cross-role-e2e.md#TC-X-N01 |
- | X-01 |
TC-X-N02 |
跨角色 | P0 | 性能 | 多家庭同时生成方案 | tests/test-cases/cross-role-e2e.md#TC-X-N02 |
- | X-03 |
TC-X-N03 |
跨角色 | P0 | 性能 | 活动名额 100,瞬时 500 请求 | tests/test-cases/cross-role-e2e.md#TC-X-N03 |
- | X-15 |
TC-X-N04 |
跨角色 | P1 | 性能 | 全平台打卡高峰 | tests/test-cases/cross-role-e2e.md#TC-X-N04 |
- | X-05 |
TC-X-N05 |
跨角色 | P0 | 安全 | 跨角色越权 | tests/test-cases/cross-role-e2e.md#TC-X-N05 |
- | X-01~X-06 |
TC-X-N06 |
跨角色 | P0 | 安全 | 导出授权 | tests/test-cases/cross-role-e2e.md#TC-X-N06 |
- | X-17 |
TC-X-N07 |
跨角色 | P1 | 兼容 | iOS/Android/小程序/Web 同时在线 | tests/test-cases/cross-role-e2e.md#TC-X-N07 |
- | X-18 |
TC-X-N08 |
跨角色 | P0 | 安全 | 文件上传链路 | tests/test-cases/cross-role-e2e.md#TC-X-N08 |
- | X-01 |
TC-DV-01 |
预约/权限 | 家长A vs 家长B | P0 | 权限 | tests/test-cases/deep-dive-assessment-appointment.md#TC-DV-01 |
F1 | 当前:返回 success 且 status=3(越权成功)→【缺陷 F1】;期望:403/拒绝 |
TC-DV-02 |
预约/状态机 | 规划师 | P1 | 异常 | tests/test-cases/deep-dive-assessment-appointment.md#TC-DV-02 |
F2 | 当前:status 置 1(非法回退)→【缺陷 F2】;期望:失败 |
TC-DV-03 |
预约/额度 | 家长 | P0 | 功能 | tests/test-cases/deep-dive-assessment-appointment.md#TC-DV-03 |
修正口径 | 返回「额度不足或已过期」;不建预约、不扣能量 |
TC-DV-04 |
预约/幂等 | 家长 | P1 | 异常 | tests/test-cases/deep-dive-assessment-appointment.md#TC-DV-04 |
F4 | 当前:2 条预约 + 20 能量 →【缺陷 F4】;期望:第 2 次拒绝/返回既有 |
TC-DV-05 |
预约/权限 | 非指派用户 | P0 | 权限 | tests/test-cases/deep-dive-assessment-appointment.md#TC-DV-05 |
既有 | 返回「您不是被指派的测评师」;status 不变 |
TC-DV-06 |
预约/校验 | 家长 | P1 | 接口 | tests/test-cases/deep-dive-assessment-appointment.md#TC-DV-06 |
既有 | 返回「assessorId或guideId必须提供一个」 |
TC-DV-07 |
列表/权限 | 非 teacher | P2 | 权限 | tests/test-cases/deep-dive-assessment-appointment.md#TC-DV-07 |
F5 | 返回「只有成长规划师可以查看此列表」;assessor-list 仅见自身 |
TC-DV-08 |
预约/校验 | 家长 | P2 | 异常 | tests/test-cases/deep-dive-assessment-appointment.md#TC-DV-08 |
F6 | 当前:无校验入库(F6);期望:400 |
TC-DV-09 |
预约/状态机 | 规划师 | P1 | 功能 | tests/test-cases/deep-dive-assessment-appointment.md#TC-DV-09 |
状态机 | 0→1→2 正确;能量 10+30 发放且流水一致 |
TC-DV-10 |
订单↔额度↔预约 | 家长 | P0 | 功能 | tests/test-cases/deep-dive-assessment-appointment.md#TC-DV-10 |
修正口径 | 额度扣减正确;额度为 0 时 create 失败 |
TC-PA-01 |
激活/拆任务 | 规划师 | P0 | 功能 | tests/test-cases/deep-dive-plan-activation.md#TC-PA-01 |
G1 | status→active;生成 1 引导 + N 模板任务;能量/流水一致 |
TC-PA-02 |
激活/幂等 | 规划师 | P0 | 异常 | tests/test-cases/deep-dive-plan-activation.md#TC-PA-02 |
G1 | 抛「方案状态异常,需要先审核通过」 |
TC-PA-03 |
激活/并发幂等 | 规划师×2 | P1 | 并发 | tests/test-cases/deep-dive-plan-activation.md#TC-PA-03 |
G2 | 任务总数 = 1+ N(不翻倍);若翻倍→【缺陷 G2】 |
TC-PA-04 |
激活/取消 | 规划师 | P1 | 功能 | tests/test-cases/deep-dive-plan-activation.md#TC-PA-04 |
G3 | 旧任务 cancelled 不计入,重新生成 1+N 任务 |
TC-PA-05 |
拆任务/边界 | 规划师 | P2 | 边界 | tests/test-cases/deep-dive-plan-activation.md#TC-PA-05 |
G3 | 仅生成引导任务,无模板任务(文档化) |
TC-PA-06 |
拆任务/数据 | 规划师 | P2 | 数据 | tests/test-cases/deep-dive-plan-activation.md#TC-PA-06 |
G4 | 非当天过期(待确认设计) |
TC-G-01 |
启动/首页 | 游客 | P1 | 功能 | tests/test-cases/guest.md#TC-G-01 |
JwtInterceptor 拦截 `/api/** | 显示引流首页,不进入任何业务页;明显展示微信/手机号/邀请登录入口 |
TC-G-02 |
认证 | 游客 | P0 | 接口 | tests/test-cases/guest.md#TC-G-02 |
AuthController/API_REFERENCE` 1.1 |
返回 Result 含 token+用户信息;角色默认 parent;跳转家长首页;首次登录建 User+family_members(memberType=login) |
TC-G-03 |
认证 | 游客 | P2 | 接口 | tests/test-cases/guest.md#TC-G-03 |
统一 POST/JWT | 验证码正确→登录下发 token;错误→提示失败且不产生会话;限流生效 ⚠ API 兼容保留:小程序端无入口(登录走 SC-G-02),2026-11-01 口径 |
TC-G-04 |
家庭/邀请 | 游客 | P1 | 功能 | tests/test-cases/guest.md#TC-G-04 |
FamilyInviteController | 登录后自动归属对应家庭,成员列表出现该用户;令牌失效→「邀请已失效」 |
TC-G-05 |
权限 | 游客 | P0 | 权限 | tests/test-cases/guest.md#TC-G-05 |
JWT;8 公开路径白名单(1.1) | 业务页→401 跳登录,登录后回跳;商城/文章列表可见(公开);需登录详情被拦截 |
TC-G-06 |
权限 | 游客 | P0 | 权限 | tests/test-cases/guest.md#TC-G-06 |
JwtInterceptor | JwtInterceptor 拦截(8 个公开路径除外);缺 token→401/403,不泄露内部错误堆栈 |
TC-G-07 |
测试模式 | 游客 | P2 | 功能 | tests/test-cases/guest.md#TC-G-07 |
AGENTS.md 测试模式 | 仅测试环境生效;生产强制真授权;模拟登录不建真实微信绑定 |
TC-G-08 |
环境切换 | 游客 | P2 | 功能 | tests/test-cases/guest.md#TC-G-08 |
config.js | 环境识别失败回退默认地址;接口地址正确 |
TC-G-09 |
认证 | 游客 | P1 | 功能 | tests/test-cases/guest.md#TC-G-09 |
AuthController | 退出后本地缓存敏感数据清除;再次进入需登录 |
TC-G-10 |
注册 | 游客 | P1 | 功能 | tests/test-cases/guest.md#TC-G-10 |
AuthController | 引导至注册;已注册账号不重复建档 |
TC-G-11 |
协议页/AgreementController | 游客 | P2 | 功能 | tests/test-cases/guest.md#TC-G-11 |
协议页/AgreementController | 达成目标:合规告知;边界:未同意不可进入注册/核心流程 |
TC-G-12 |
config.js | 游客 | P2 | 功能 | tests/test-cases/guest.md#TC-G-12 |
config.js | 达成目标:非微信浏览器打开小程序链接;边界:探测失败给出明确引导 |
TC-G-01-E |
启动/首页 | 游客 | P2 | 异常 | tests/test-cases/guest.md#TC-G-01-E |
JwtInterceptor 拦截 `/api/** | 1. 不白屏、提供"稍后"/手机号登录兜底 2. 超时给重试而非 500;不泄露内部堆栈 |
TC-G-02-E |
认证 | 游客 | P2 | 异常 | tests/test-cases/guest.md#TC-G-02-E |
AuthController/API_REFERENCE` 1.1 |
1. 回退手机号登录、停留登录页不报错 2. 返回已有账号不重复建号 3. 超时提示重试、不建脏号 |
TC-G-03-E |
认证 | 游客 | P2 | 异常 | tests/test-cases/guest.md#TC-G-03-E |
统一 POST/JWT | 1. 提示失败且不签发 token 2. 格式校验 400 拦截 3. 限流提示"操作频繁" 4. 绝不产生会话 |
TC-G-04-E |
家庭/邀请 | 游客 | P2 | 异常 | tests/test-cases/guest.md#TC-G-04-E |
FamilyInviteController | 1. 拒绝并提示"邀请已失效" 2. 按业务规则处理(加入或被拒)、不串家庭 |
TC-G-05-E |
权限 | 游客 | P2 | 异常 | tests/test-cases/guest.md#TC-G-05-E |
JWT;8 公开路径白名单(1.1) | 1. 统一 401 跳登录;登录后回跳 2. 重定向登录;仅 8 公开路径放行 |
TC-G-06-E |
权限 | 游客 | P1 | 异常 | tests/test-cases/guest.md#TC-G-06-E |
JwtInterceptor | 1. 统一 401/403、不泄露内部错误与结构 2. 公开路径正常返回、不误拦 |
TC-G-07-E |
测试模式 | 游客 | P3 | 异常 | tests/test-cases/guest.md#TC-G-07-E |
AGENTS.md 测试模式 | 1. 生产强制真授权、模拟登录被拒 2. 测试模式仅测试环境生效、不污染生产数据 |
TC-G-08-E |
环境切换 | 游客 | P3 | 异常 | tests/test-cases/guest.md#TC-G-08-E |
config.js | 1. 回退默认 API 地址、功能可用 2. 不因识别失败崩溃/错连 |
TC-G-09-E |
认证 | 游客 | P2 | 异常 | tests/test-cases/guest.md#TC-G-09-E |
AuthController | 1. 退出后接口 401、需重登 2. 本地 token/隐私数据已清除 |
TC-G-10-E |
注册 | 游客 | P2 | 异常 | tests/test-cases/guest.md#TC-G-10-E |
AuthController | 1. 明确"未注册"并引导注册 2. 已注册不重复建档、直接登录 |
TC-G-11-E |
协议页 | 游客 | P2 | 异常 | tests/test-cases/guest.md#TC-G-11-E |
协议页/AgreementController | 1. 拦截并强制先同意 2. 加载失败给重试、不绕过同意 |
TC-G-12-E |
config.js | 游客 | P2 | 异常 | tests/test-cases/guest.md#TC-G-12-E |
config.js | 1. 给出"在微信内打开"明确引导 2. 降级静态页、核心流程可手机号兜底 |
TC-G-01-P |
启动/首页 | 游客 | P1 | 权限 | tests/test-cases/guest.md#TC-G-01-P |
JwtInterceptor 拦截 `/api/** | 非归属数据访问统一 403/401,不泄露他人数据;横向越权被拒 |
TC-G-02-P |
认证 | 游客 | P1 | 权限 | tests/test-cases/guest.md#TC-G-02-P |
AuthController/API_REFERENCE` 1.1 |
非归属数据访问统一 403/401,不泄露他人数据;横向越权被拒 |
TC-G-03-P |
认证 | 游客 | P1 | 权限 | tests/test-cases/guest.md#TC-G-03-P |
统一 POST/JWT | 非归属数据访问统一 403/401,不泄露他人数据;横向越权被拒 |
TC-G-04-P |
家庭/邀请 | 游客 | P1 | 权限 | tests/test-cases/guest.md#TC-G-04-P |
FamilyInviteController | 非归属数据访问统一 403/401,不泄露他人数据;横向越权被拒 |
TC-G-05-P |
权限 | 游客 | P1 | 权限 | tests/test-cases/guest.md#TC-G-05-P |
JWT;8 公开路径白名单(1.1) | 非归属数据访问统一 403/401,不泄露他人数据;横向越权被拒 |
TC-G-06-P |
权限 | 游客 | P1 | 权限 | tests/test-cases/guest.md#TC-G-06-P |
JwtInterceptor | 非归属数据访问统一 403/401,不泄露他人数据;横向越权被拒 |
TC-G-07-P |
测试模式 | 游客 | P2 | 权限 | tests/test-cases/guest.md#TC-G-07-P |
AGENTS.md 测试模式 | 非归属数据访问统一 403/401,不泄露他人数据;横向越权被拒 |
TC-G-08-P |
环境切换 | 游客 | P2 | 权限 | tests/test-cases/guest.md#TC-G-08-P |
config.js | 非归属数据访问统一 403/401,不泄露他人数据;横向越权被拒 |
TC-G-09-P |
认证 | 游客 | P1 | 权限 | tests/test-cases/guest.md#TC-G-09-P |
AuthController | 非归属数据访问统一 403/401,不泄露他人数据;横向越权被拒 |
TC-G-10-P |
注册 | 游客 | P1 | 权限 | tests/test-cases/guest.md#TC-G-10-P |
AuthController | 非归属数据访问统一 403/401,不泄露他人数据;横向越权被拒 |
TC-G-11-P |
协议页/AgreementController | 游客 | P2 | 权限 | tests/test-cases/guest.md#TC-G-11-P |
协议页/AgreementController | 统一 401/403,不泄露内部错误与数据;8 个公开路径除外 |
TC-G-12-P |
config.js | 游客 | P2 | 权限 | tests/test-cases/guest.md#TC-G-12-P |
config.js | 统一 401/403,不泄露内部错误与数据;8 个公开路径除外 |
TC-G-N01 |
落地页 | 游客 | P2 | 性能 | tests/test-cases/guest.md#TC-G-N01 |
落地页/邀请 | 首屏 ≤ 3s;骨架屏生效;CDN 资源命中;无白屏 |
TC-G-N02 |
浏览转化 | 游客 | P2 | 兼容 | tests/test-cases/guest.md#TC-G-N02 |
登录注册(微信授权) | 布局一致;微信授权正常;兜底登录可用;无错位 |
TC-G-N03 |
非微信H5 | 游客 | P2 | 兼容 | tests/test-cases/guest.md#TC-G-N03 |
H5 兜底 | 功能可用;无微信 SDK 依赖报错;流程闭环 |
TC-G-N04 |
落地页 | 游客 | P0 | 安全 | tests/test-cases/guest.md#TC-G-N04 |
接口鉴权 | 返回 401;不泄露数据与结构 |
TC-G-N05 |
登录注册 | 游客 | P0 | 安全 | tests/test-cases/guest.md#TC-G-N05 |
登录限流 | 触发限流/锁定;验证码一次性;防爆破;无撞库成功 |
TC-H-01 |
真人管家 | P0 | 功能 | 家长 A 已触发 AI 升级(来自 SC-B-09 或异常预警);已开通真人管家服务 | tests/test-cases/human-butler.md#TC-H-01 |
- | H-01 / B-09 |
TC-H-02 |
真人管家 | P0 | 功能 | 家长已开通真人管家服务(套餐 / 权益有效) | tests/test-cases/human-butler.md#TC-H-02 |
- | H-02 / P-32 |
TC-H-03 |
真人管家 | P1 | 功能 | 已建立家长-规划师-管家三方服务关系 | tests/test-cases/human-butler.md#TC-H-03 |
- | H-03 / X-11 / T-16 |
TC-H-04 |
真人管家 | P0 | 功能 | 升级 / 应急 SOP 已配置;值班与紧急联系人就绪 | tests/test-cases/human-butler.md#TC-H-04 |
- | H-04 / A-13 |
TC-H-05 |
真人管家 | P1 | 功能 | 线下资源库 / 活动已录入并通过审核;服务商资源可用 | tests/test-cases/human-butler.md#TC-H-05 |
- | H-05 / P-44 |
TC-H-06 |
真人管家 | P1 | 功能 | AI 升级工单已处理完成(TC-H-01) | tests/test-cases/human-butler.md#TC-H-06 |
- | H-06 / B-01 / B-09 |
TC-H-07 |
系统 | P1 | 功能 | 质检规则与满意度问卷已配置;存在已完成的服务会话与工单 | tests/test-cases/human-butler.md#TC-H-07 |
- | H-07 / A-13 |
TC-H-01-E |
真人管家 | P2 | 异常 | 升级队列可用 | tests/test-cases/human-butler.md#TC-H-01-E |
- | H-01 |
TC-H-02-E |
真人管家 | P2 | 异常 | 服务权益可构造 | tests/test-cases/human-butler.md#TC-H-02-E |
- | H-02 |
TC-H-03-E |
真人管家 | P3 | 异常 | 三方关系可构造 | tests/test-cases/human-butler.md#TC-H-03-E |
- | H-03 |
TC-H-04-E |
真人管家 | P1 | 异常 | 应急 SOP 已配置 | tests/test-cases/human-butler.md#TC-H-04-E |
- | H-04 |
TC-H-05-E |
真人管家 | P2 | 异常 | 资源库可构造 | tests/test-cases/human-butler.md#TC-H-05-E |
- | H-05 |
TC-H-06-E |
真人管家 | P2 | 异常 | 反哺通道可用 | tests/test-cases/human-butler.md#TC-H-06-E |
- | H-06 |
TC-H-07-E |
系统 | P2 | 异常 | 质检规则可构造 | tests/test-cases/human-butler.md#TC-H-07-E |
- | H-07 |
TC-H-01-P |
真人管家 | P1 | 权限 | 家庭1 + F9;管家仅服务家庭1 | tests/test-cases/human-butler.md#TC-H-01-P |
- | H-01 |
TC-H-02-P |
真人管家 | P1 | 权限 | 管家仅服务家庭1 | tests/test-cases/human-butler.md#TC-H-02-P |
- | H-02 |
TC-H-03-P |
真人管家 | P1 | 权限 | 三方关系 + F9 | tests/test-cases/human-butler.md#TC-H-03-P |
- | H-03 |
TC-H-04-P |
真人管家 | P0 | 权限 | 各角色账号 | tests/test-cases/human-butler.md#TC-H-04-P |
- | H-04 |
TC-H-05-P |
真人管家 | P1 | 权限 | 服务商 V 仅可维护自家资源 | tests/test-cases/human-butler.md#TC-H-05-P |
- | H-05 |
TC-H-06-P |
真人管家 | P1 | 权限 | 知识库审核权归运营 | tests/test-cases/human-butler.md#TC-H-06-P |
- | H-06 |
TC-H-07-P |
系统 | P0 | 权限 | 绩效看板仅授权角色可见 | tests/test-cases/human-butler.md#TC-H-07-P |
- | H-07 |
TC-P-01 |
家庭 | 家长 | P0 | 功能 | tests/test-cases/parent.md#TC-P-01 |
FamilyInviteController | 家庭创建成功;生成唯一邀请码+二维码(令牌+落地页);角色变家庭管理员 |
TC-P-02 |
家庭/成员 | 家长 | P1 | 功能 | tests/test-cases/parent.md#TC-P-02 |
FamilyInviteController | C 加入家庭,成员列表出现 C |
TC-P-03 |
成员资料 | 家长 | P1 | 功能 | tests/test-cases/parent.md#TC-P-03 |
FamilyMembersController | 成员卡片正确显示;关系标签可选(RelationshipPicker) |
TC-P-04 |
关系图 | 家长 | P1 | 功能 | tests/test-cases/parent.md#TC-P-04 |
关系类型 CRUD/前端选择器 | 关系图节点与关系标签同步更新 |
TC-P-05 |
任务 | 家长 | P0 | 功能 | tests/test-cases/parent.md#TC-P-05 |
TaskController | 任务出现在 B 列表,状态待执行 |
TC-P-06 |
任务审核 | 家长 | P0 | 功能 | tests/test-cases/parent.md#TC-P-06 |
TaskController/PointsController |
通过→B 积分+N 并生成流水;驳回→退回重做;重复提交不重复发分 |
TC-P-07 |
心愿 | 家长 | P1 | 功能 | tests/test-cases/parent.md#TC-P-07 |
WishController/RewardController |
通过→扣积分进入兑换;驳回→心愿失效;积分不足兑换拦截 |
TC-P-08 |
能量 | 家长 | P1 | 功能 | tests/test-cases/parent.md#TC-P-08 |
EnergyController | 显示家庭健康指数与五维能量分配(总和=100%);流水可追溯;无数据时空态非 500 |
TC-P-09 |
测评订单 | 家长 | P0 | 功能 | tests/test-cases/parent.md#TC-P-09 |
AssessmentAppointmentController | 生成测评订单;状态 已支付→待安排→已预约;未支付/未选规划师不进入待安排 |
TC-P-10 |
健康报告 | 家长 | P0 | 功能 | tests/test-cases/parent.md#TC-P-10 |
健康报告上传解析 | 识别为 gut_flora;三阶段上传→解析预览→确认入库;非募极报告提示「请确认是募极生物肠道菌群报告」 |
TC-P-11 |
报告查看 | 家长 | P1 | 功能 | tests/test-cases/parent.md#TC-P-11 |
报告解析 | 显示菌群健康分/平衡/多样性、菌种明细、疾病风险;七维评分刷新 |
TC-P-12 |
饮食推荐 | 家长 | P1 | 功能 | tests/test-cases/parent.md#TC-P-12 |
饮食推荐系统 | 按报告生成食材推荐指数,展示可吃/慎吃列表;无报告时无推荐 |
TC-P-13 |
AI 方案 | 家长 | P0 | 功能 | tests/test-cases/parent.md#TC-P-13 |
AI 统一走 LangGraph;`AiGateway | 生成 overview+营养/饮食/运动三板块;可逐板块重生成/确认;未购买会员→提示购买 |
TC-P-14 |
方案提交 | 家长 | P1 | 功能 | tests/test-cases/parent.md#TC-P-14 |
方案状态机 | 进入「已提交(待规划师审核)」或按配置直接发布 |
TC-P-15 |
双角色 | 家长 | P0 | 权限 | tests/test-cases/parent.md#TC-P-15 |
POST /api/family/member/switch`(替代废弃 switch-mode);双角色铁律 | 切换为孩子端界面(数据隔离);切回需密码;孩子端不能切回家长 |
TC-P-16 |
会员 | 家长 | P1 | 功能 | tests/test-cases/parent.md#TC-P-16 |
MembershipController/ProductOrderController |
支付成功解锁方案生成等付费功能;未购买点击生成提示购买 |
TC-P-17 |
积分/成长 | 家长 | P1 | 功能 | tests/test-cases/parent.md#TC-P-17 |
PointsController/GrowthController |
积分流水与孩子成长记录一致;时间格式 yyyy-MM-dd HH:mm:ss;积分与流水总额一致 |
TC-P-18 |
AI 对话 | 家长 | P1 | 功能 | tests/test-cases/parent.md#TC-P-18 |
AIChatController`;LangGraph RAG | 返回基于知识库回答,可含产品/任务推荐;LangGraph 不可用时 AiGateway Fallback 兜底;多轮连续 |
TC-P-19 |
能量配置 | 家长 | P2 | 功能 | tests/test-cases/parent.md#TC-P-19 |
维度配置 | 显示身/心/智/行/富口径与权重;配置未同步展示兜底说明 |
TC-P-20 |
健康报告 | 家长 | P0 | 功能 | tests/test-cases/parent.md#TC-P-20 |
报告解析中台/`POST /api/media/upload | 识别 gut_flora;解析预览→确认入库;非募极报告提示「请确认是募极生物肠道菌群报告」 |
TC-P-21 |
报告解析 | 家长 | P1 | 功能 | tests/test-cases/parent.md#TC-P-21 |
/api/admin/report-parser/types | 匹配已注册类型;未知类型进未知聚类待运营自学习 |
TC-P-22 |
报告预览 | 家长 | P1 | 功能 | tests/test-cases/parent.md#TC-P-22 |
解析中台 | 预览数据完整;异常数据提示不入库 |
TC-P-23 |
报告入库 | 家长 | P1 | 功能 | tests/test-cases/parent.md#TC-P-23 |
解析中台 | 确认前可取消不入库;确认后七维刷新 |
TC-P-24 |
报告管理 | 家长 | P1 | 功能 | tests/test-cases/parent.md#TC-P-24 |
报告管理 | 删除有关联方案时提示;对比展示差异 |
TC-P-25 |
报告趋势 | 家长 | P1 | 功能 | tests/test-cases/parent.md#TC-P-25 |
成长/报告 | 单报告无趋势提示;时间轴正确 |
TC-P-26 |
饮食推荐 | 家长 | P1 | 功能 | tests/test-cases/parent.md#TC-P-26 |
饮食推荐系统 | 按菌群生成;无报告无推荐 |
TC-P-27 |
家庭食谱 | 家长 | P1 | 功能 | tests/test-cases/parent.md#TC-P-27 |
饮食推荐/家庭食谱 | 无报告降级通用食谱;忌口/过敏自动排除 |
TC-P-28 |
食谱筛选 | 家长 | P2 | 功能 | tests/test-cases/parent.md#TC-P-28 |
饮食推荐 | 忌口冲突时提示;重算生效 |
TC-P-29 |
食谱收藏 | 家长 | P2 | 功能 | tests/test-cases/parent.md#TC-P-29 |
饮食推荐 | 调整不破坏营养目标;收藏持久化 |
TC-P-30 |
食谱营养 | 家长 | P2 | 功能 | tests/test-cases/parent.md#TC-P-30 |
饮食推荐 | 超标/不足提示 |
TC-P-31 |
测评类型 | 家长 | P1 | 功能 | tests/test-cases/parent.md#TC-P-31 |
DanAssessmentController | 类目来自后端字典;展示完整 8 类 |
TC-P-32 |
测评规划师 | 家长 | P1 | 功能 | tests/test-cases/parent.md#TC-P-32 |
测评订单 | 未绑定规划师提示先绑定 |
TC-P-33 |
测评下单 | 家长 | P1 | 功能 | tests/test-cases/parent.md#TC-P-33 |
AssessmentOrder | 套餐下架不可下单;生成待支付订单 |
TC-P-34 |
测评支付 | 家长 | P1 | 接口 | tests/test-cases/parent.md#TC-P-34 |
支付/`AssessmentQuota | 支付失败回滚不生成额度 |
TC-P-35 |
测评额度 | 家长 | P1 | 功能 | tests/test-cases/parent.md#TC-P-35 |
AssessmentQuota | 额度过期不可用于预约;展示有效期 |
TC-P-36 |
测评预约 | 家长 | P0 | 接口 | tests/test-cases/parent.md#TC-P-36 |
AssessmentAppointmentController | 先扣一条额度→落预约;额度不足/过期直接报错不落预约 |
TC-P-37 |
预约状态 | 家长 | P1 | 功能 | tests/test-cases/parent.md#TC-P-37 |
AssessmentAppointmentController | 状态准确;状态机守卫 |
TC-P-38 |
预约取消 | 家长 | P0 | 权限 | tests/test-cases/parent.md#TC-P-38 |
AssessmentAppointmentController | 非归属取消被拒(CFC-AP 取消越权);取消不退款逻辑 |
TC-P-39 |
DAN报告 | 家长 | P1 | 功能 | tests/test-cases/parent.md#TC-P-39 |
DanAssessmentResultDTO | 结果未录入不展示;量纲标注 |
TC-P-40 |
AI方案 | 家长 | P0 | 功能 | tests/test-cases/parent.md#TC-P-40 |
AIChatController/AiGateway |
未购会员提示购买;AI 超时 AiGateway Fallback 不 500 |
TC-P-41 |
方案迭代 | 家长 | P1 | 功能 | tests/test-cases/parent.md#TC-P-41 |
AIChatController | 重生成不丢其他板块 |
TC-P-42 |
方案编辑 | 家长 | P1 | 功能 | tests/test-cases/parent.md#TC-P-42 |
方案管理 | 编辑后状态标记已改 |
TC-P-43 |
方案查看 | 家长 | P1 | 功能 | tests/test-cases/parent.md#TC-P-43 |
方案管理 | 空方案不白屏 |
TC-P-44 |
方案确认 | 家长 | P0 | 功能 | tests/test-cases/parent.md#TC-P-44 |
方案状态机 | 未确认不可激活;确认幂等 |
TC-P-45 |
方案发布 | 家长 | P1 | 功能 | tests/test-cases/parent.md#TC-P-45 |
方案管理 | 需审核配置时走审核流 |
TC-P-46 |
方案激活 | 家长 | P0 | 功能 | tests/test-cases/parent.md#TC-P-46 |
方案激活任务分解 | 已激活再激活不重复(幂等靠状态机);失败回滚不残半任务 |
TC-P-47 |
方案任务 | 家长 | P1 | 功能 | tests/test-cases/parent.md#TC-P-47 |
GrowthPlanController | 任务增删与方案同步 |
TC-P-48 |
方案版本 | 家长 | P2 | 功能 | tests/test-cases/parent.md#TC-P-48 |
方案管理 | 版本不可篡改 |
TC-P-49 |
AI对话 | 家长 | P1 | 功能 | tests/test-cases/parent.md#TC-P-49 |
AIChatController | 基于知识库回答;LangGraph 不可用 Fallback;多轮连续 |
TC-P-50 |
成长记录 | 家长 | P1 | 功能 | tests/test-cases/parent.md#TC-P-50 |
GrowthController | 数据缺失项跳过不报错 |
TC-P-51 |
成长里程碑 | 家长 | P2 | 功能 | tests/test-cases/parent.md#TC-P-51 |
GrowthController | 重复标幂等 |
TC-P-52 |
商城浏览 | 家长 | P1 | 功能 | tests/test-cases/parent.md#TC-P-52 |
MallController/danshop |
下架商品不展示 |
TC-P-53 |
商品详情 | 家长 | P1 | 功能 | tests/test-cases/parent.md#TC-P-53 |
MallController | 库存为 0 提示 |
TC-P-54 |
商城下单 | 家长 | P1 | 功能 | tests/test-cases/parent.md#TC-P-54 |
MallController | 库存不足拦截;重复下单幂等 |
TC-P-55 |
订单支付 | 家长 | P1 | 接口 | tests/test-cases/parent.md#TC-P-55 |
支付 | 支付失败回滚 |
TC-P-56 |
订单退款 | 家长 | P1 | 功能 | tests/test-cases/parent.md#TC-P-56 |
订单服务 | 已发货退款规则;重复退款拦截 |
TC-P-57 |
优惠券 | 家长 | P1 | 功能 | tests/test-cases/parent.md#TC-P-57 |
优惠券 | 券过期/不满足门槛不可用 |
TC-P-58 |
会员购买 | 家长 | P1 | 功能 | tests/test-cases/parent.md#TC-P-58 |
MemberController | 支付失败回滚;重复购买幂等 |
TC-P-59 |
会员权益 | 家长 | P1 | 功能 | tests/test-cases/parent.md#TC-P-59 |
MemberController | 权益随档位变化 |
TC-P-60 |
会员续费 | 家长 | P2 | 功能 | tests/test-cases/parent.md#TC-P-60 |
MemberController | 续费叠加计算正确 |
TC-P-61 |
联系人 | 家长 | P1 | 功能 | tests/test-cases/parent.md#TC-P-61 |
ContactCard/contact-detail |
重复号码去重 |
TC-P-62 |
联系人导入 | 家长 | P2 | 功能 | tests/test-cases/parent.md#TC-P-62 |
ContactImport | 导入格式错误行跳过并报告 |
TC-P-63 |
联系人权限 | 家长 | P1 | 权限 | tests/test-cases/parent.md#TC-P-63 |
ContactCard | 越权查看被拒 |
TC-P-64 |
个人资料 | 家长 | P1 | 功能 | tests/test-cases/parent.md#TC-P-64 |
AuthController | 手机格式校验;保存生效 |
TC-P-65 |
通知设置 | 家长 | P2 | 功能 | tests/test-cases/parent.md#TC-P-65 |
消息服务 | 关闭后仍保关键安全通知 |
TC-P-66 |
隐私设置 | 家长 | P2 | 功能 | tests/test-cases/parent.md#TC-P-66 |
隐私设置 | 最小权限保底 |
TC-P-67 |
报告代传/report-proxy | 家长 | P0 | 功能 | tests/test-cases/parent.md#TC-P-67 |
报告代传/report-proxy | 达成目标:无报告原件时由他人代传;边界:代传需授权令牌;越权代传他人孩子被拒;代传报告归属校验 |
TC-P-68 |
家庭天盘 | 家长 | P1 | 功能 | tests/test-cases/parent.md#TC-P-68 |
家庭天盘 | 达成目标:一眼看全家健康/能量;边界:数据缺失降级展示;仅本家庭成员可见 |
TC-P-69 |
精准营养 | 家长 | P1 | 功能 | tests/test-cases/parent.md#TC-P-69 |
精准营养 | 达成目标:设定每日营养/热量目标;边界:目标非法(负/超上限)拦截 |
TC-P-70 |
舌诊情绪识别 | 家长 | P1 | 功能 | tests/test-cases/parent.md#TC-P-70 |
舌诊情绪识别 | 达成目标:上传舌苔照辅助评估;边界:非照片/模糊拒绝;隐私标注不外露 |
TC-P-71 |
AuthController | 家长 | P1 | 功能 | tests/test-cases/parent.md#TC-P-71 |
AuthController | 达成目标:注销账号;边界:有进行中订单/未结清拦截;注销后不可登录 |
TC-P-72 |
数据导出(GDPR) | 家长 | P1 | 功能 | tests/test-cases/parent.md#TC-P-72 |
数据导出(GDPR) | 达成目标:下载本人数据;边界:敏感字段脱敏;频次限制;越权导出被拒 |
TC-P-73 |
家庭/成员 | 家长 | P1 | 功能 | tests/test-cases/parent.md#TC-P-73 |
家庭/成员 | 达成目标:多孩子家庭切换;边界:仅本家庭孩子可选;当前孩子态隔离 |
TC-P-74 |
规划师绑定 | 家长 | P1 | 功能 | tests/test-cases/parent.md#TC-P-74 |
规划师绑定 | 达成目标:更换服务规划师;边界:解绑前处理在途方案/预约;非本家庭规划师拒 |
TC-P-75 |
优惠券 | 家长 | P1 | 功能 | tests/test-cases/parent.md#TC-P-75 |
优惠券 | 达成目标:得券;边界:库存为0/已领拦截;重复领幂等 |
TC-P-76 |
活动管理 | 家长 | P0 | 功能 | tests/test-cases/parent.md#TC-P-76 |
活动管理 | 达成目标:报名平台活动;边界:并发超卖拦截(CFC 真实 bug 已修);名额满拒;重复报名幂等 |
TC-P-77 |
活动 | 家长 | P1 | 功能 | tests/test-cases/parent.md#TC-P-77 |
活动 | 达成目标:参与打卡/裂变;边界:重复打卡幂等;刷量/机器行为拦截 |
TC-P-78 |
消息服务 | 家长 | P1 | 功能 | tests/test-cases/parent.md#TC-P-78 |
消息服务 | 达成目标:看系统/任务/方案提醒;边界:越权消息不可见;分页 |
TC-P-79 |
消息服务 | 家长 | P1 | 功能 | tests/test-cases/parent.md#TC-P-79 |
消息服务 | 达成目标:控制接收;边界:关键安全通知不可关闭 |
TC-P-80 |
会员/订单 | 家长 | P1 | 功能 | tests/test-cases/parent.md#TC-P-80 |
会员/订单 | 达成目标:退会员/开发票;边界:已消费不退;重复退拦截;发票信息校验 |
TC-P-81 |
方案/任务 | 家长 | P1 | 功能 | tests/test-cases/parent.md#TC-P-81 |
方案/任务 | 达成目标:暂存未完;边界:草稿有效期;恢复冲突提示 |
TC-P-82 |
搜索 | 家长 | P1 | 功能 | tests/test-cases/parent.md#TC-P-82 |
搜索 | 达成目标:快速定位;边界:越权结果过滤;空结果不报错 |
TC-P-83 |
客服 | 家长 | P1 | 功能 | tests/test-cases/parent.md#TC-P-83 |
客服 | 达成目标:提反馈;边界:敏感信息脱敏;附件大小限制 |
TC-P-84 |
分享 | 家长 | P1 | 功能 | tests/test-cases/parent.md#TC-P-84 |
分享 | 达成目标:共享;边界:链接失效/权限校验;越权分享被拒 |
TC-P-85 |
AuthController | 家长 | P1 | 功能 | tests/test-cases/parent.md#TC-P-85 |
AuthController | 达成目标:同账号多设备;边界:异常设备风控;退出清 token |
TC-P-86 |
勋章/排行 | 家长 | P1 | 功能 | tests/test-cases/parent.md#TC-P-86 |
勋章/排行 | 达成目标:激励;边界:数据仅本家庭可见;排名实时性 |
TC-P-01-E |
家庭 | 家长 | P2 | 异常 | tests/test-cases/parent.md#TC-P-01-E |
FamilyInviteController | 名称空或超长返回 400 且 message 含『家庭名称』校验项;HTML/SQL 注入被转义,库内不落恶意串;不抛 500、不泄露堆栈 |
TC-P-02-E |
家庭/成员 | 家长 | P2 | 异常 | tests/test-cases/parent.md#TC-P-02-E |
FamilyInviteController | 非法手机号 400 提示格式;已占用账号提示『已存在家庭关系』;过期码提示『邀请已失效,请重新获取』;均不建立成员关系 |
TC-P-03-E |
成员资料 | 家长 | P2 | 异常 | tests/test-cases/parent.md#TC-P-03-E |
FamilyMembersController | 未来生日 400;关系非法值拒绝;姓名特殊字符转义存储、不破坏查询;既有成员数据不被污染 |
TC-P-04-E |
关系图 | 家长 | P2 | 异常 | tests/test-cases/parent.md#TC-P-04-E |
关系类型 CRUD/前端选择器 | 重复关系提示已存在、不新增节点;非法枚举 400;关系图不出现重复/幽灵节点 |
TC-P-05-E |
任务 | 家长 | P2 | 异常 | tests/test-cases/parent.md#TC-P-05-E |
TaskController | 频率非法 400;并发双发幂等,仅生成 1 条任务、仅 1 次能量预期;超期任务拒绝提交 |
TC-P-06-E |
任务审核 | 家长 | P2 | 异常 | tests/test-cases/parent.md#TC-P-06-E |
TaskController/PointsController |
重复审批幂等不双计积分;驳回→重做→再审批仅在重做后计 1 次;超期任务审批被拒 |
TC-P-07-E |
心愿 | 家长 | P2 | 异常 | tests/test-cases/parent.md#TC-P-07-E |
WishController/RewardController |
余额不足拦截且不扣负积分;已取消心愿兑换提示失效;并发幂等仅扣 1 次 |
TC-P-08-E |
能量 | 家长 | P2 | 异常 | tests/test-cases/parent.md#TC-P-08-E |
EnergyController | 查询超时降级为空态提示非 500;权重为 0 时占比按兜底(0%)显示不崩;首访空态正常 |
TC-P-09-E |
测评订单 | 家长 | P2 | 异常 | tests/test-cases/parent.md#TC-P-09-E |
AssessmentAppointmentController | 回调验签失败订单保持 pending 不进待安排;余额不足回滚;重复回调幂等仅落 1 次已支付 |
TC-P-10-E |
健康报告 | 家长 | P2 | 异常 | tests/test-cases/parent.md#TC-P-10-E |
健康报告上传解析 | 损坏文件识别失败进未知聚类并提示;非募极明确提示『请确认是募极生物肠道菌群报告』;超大/加密提示超限或密码保护,均非 500 |
TC-P-11-E |
报告查看 | 家长 | P2 | 异常 | tests/test-cases/parent.md#TC-P-11-E |
报告解析 | 不存在/已删返回 404 提示『报告不存在』;解析中提示『报告解析中,请稍候』,不白屏不 500 |
TC-P-12-E |
饮食推荐 | 家长 | P2 | 异常 | tests/test-cases/parent.md#TC-P-12-E |
饮食推荐系统 | AiGateway Fallback 返回兜底食材清单+友好提示非 500;重复点击幂等仅生成 1 份、不重复扣费 |
TC-P-13-E |
AI 方案 | 家长 | P2 | 异常 | tests/test-cases/parent.md#TC-P-13-E |
AI 统一走 LangGraph;`AiGateway | Fallback 兜底方案+提示;未购会员请求付费板块返回『请先开通会员』拦截,不白生成 |
TC-P-14-E |
方案提交 | 家长 | P2 | 异常 | tests/test-cases/parent.md#TC-P-14-E |
方案状态机 | 空方案提交拦截提示『方案未生成』;重复提交幂等不重复进审核 |
TC-P-15-E |
双角色 | 家长 | P2 | 异常 | tests/test-cases/parent.md#TC-P-15-E |
POST /api/family/member/switch`(替代废弃 switch-mode);双角色铁律 | 缺失/过期 token 统一 401 跳登录;孩子端无切回家长入口;非法切换 403 被拒;模拟登录仅测试环境生效 |
TC-P-16-E |
会员 | 家长 | P2 | 异常 | tests/test-cases/parent.md#TC-P-16-E |
MembershipController/ProductOrderController |
支付超时订单回滚不解锁权益;重复购买幂等仅开通 1 次、不重复扣费 |
TC-P-17-E |
积分/成长 | 家长 | P2 | 异常 | tests/test-cases/parent.md#TC-P-17-E |
PointsController/GrowthController |
并发刷新总量一致不重复计;关联任务已删时该成长项跳过不报错,时间格式 yyyy-MM-dd HH:mm:ss |
TC-P-18-E |
AI 对话 | 家长 | P2 | 异常 | tests/test-cases/parent.md#TC-P-18-E |
AIChatController`;LangGraph RAG | 超长消息 400 提示;敏感词按合规拦截;LangGraph 不可用 Fallback 兜底回答,多轮上下文不丢 |
TC-P-19-E |
能量配置 | 家长 | P3 | 异常 | tests/test-cases/parent.md#TC-P-19-E |
维度配置 | 配置缺失展示兜底说明非 500;权重和非法 400 提示『权重合计需为 100%』 |
TC-P-20-E |
健康报告 | 家长 | P2 | 异常 | tests/test-cases/parent.md#TC-P-20-E |
报告解析中台/`POST /api/media/upload | 损坏文件识别失败进未知聚类并提示;非募极明确提示『请确认是募极生物肠道菌群报告』;超大/加密提示超限或密码保护,均非 500 |
TC-P-21-E |
报告解析 | 家长 | P2 | 异常 | tests/test-cases/parent.md#TC-P-21-E |
/api/admin/report-parser/types | 未注册类型进未知聚类待运营自学习;0 字节文件提示『文件为空』;均非 500 |
TC-P-22-E |
报告预览 | 家长 | P2 | 异常 | tests/test-cases/parent.md#TC-P-22-E |
解析中台 | 异常值提示『数据异常,暂不入库』不入库;超时提示解析中,不白屏 |
TC-P-23-E |
报告入库 | 家长 | P2 | 异常 | tests/test-cases/parent.md#TC-P-23-E |
解析中台 | 报告已删提示『报告不存在,确认失败』;并发确认幂等仅入库 1 次、七维仅刷新 1 次 |
TC-P-24-E |
报告管理 | 家长 | P2 | 异常 | tests/test-cases/parent.md#TC-P-24-E |
报告管理 | 有方案时提示『请先解除关联方案』再删;不存在 id 返回 404 不崩 |
TC-P-25-E |
报告趋势 | 家长 | P2 | 异常 | tests/test-cases/parent.md#TC-P-25-E |
成长/报告 | 单报告提示『至少需要 2 份报告才能看趋势』;时间轴按真实时间升序,不倒挂 |
TC-P-26-E |
饮食推荐 | 家长 | P2 | 异常 | tests/test-cases/parent.md#TC-P-26-E |
饮食推荐系统 | AiGateway Fallback 返回兜底食材清单+友好提示非 500;重复点击幂等仅生成 1 份、不重复扣费 |
TC-P-27-E |
家庭食谱 | 家长 | P2 | 异常 | tests/test-cases/parent.md#TC-P-27-E |
饮食推荐/家庭食谱 | 超时 Fallback 通用食谱+提示;过敏食材未排除时返回 400 提示『存在过敏冲突』重算 |
TC-P-28-E |
食谱筛选 | 家长 | P3 | 异常 | tests/test-cases/parent.md#TC-P-28-E |
饮食推荐 | 忌口冲突提示并停止生成;非法忌口值 400;重算生效 |
TC-P-29-E |
食谱收藏 | 家长 | P3 | 异常 | tests/test-cases/parent.md#TC-P-29-E |
饮食推荐 | 替换后提示『超出营养目标』不静默;重复收藏幂等仅 1 条 |
TC-P-30-E |
食谱营养 | 家长 | P3 | 异常 | tests/test-cases/parent.md#TC-P-30-E |
饮食推荐 | 超标明确标红提示『超出目标 X%』;未设目标提示先设目标,不除零 |
TC-P-31-E |
测评类型 | 家长 | P2 | 异常 | tests/test-cases/parent.md#TC-P-31-E |
DanAssessmentController | 字典缺失时前端降级不白屏;非法 type 400;八类以字典为准 |
TC-P-32-E |
测评规划师 | 家长 | P2 | 异常 | tests/test-cases/parent.md#TC-P-32-E |
测评订单 | 未绑定提示『请先绑定规划师』;已解绑 T 不在可选列表,选则 400 |
TC-P-33-E |
测评下单 | 家长 | P2 | 异常 | tests/test-cases/parent.md#TC-P-33-E |
AssessmentOrder | 下架套餐 400『套餐不可售』;数量非法/库存不足拦截,不生成订单 |
TC-P-34-E |
测评支付 | 家长 | P2 | 异常 | tests/test-cases/parent.md#TC-P-34-E |
支付/`AssessmentQuota | 超时回滚不生成额度;重复回调幂等仅生成 1 条额度 |
TC-P-35-E |
测评额度 | 家长 | P2 | 异常 | tests/test-cases/parent.md#TC-P-35-E |
AssessmentQuota | 过期额度预约返回『额度已过期』不落预约;额度页加载降级非 500 |
TC-P-36-E |
测评预约 | 家长 | P2 | 异常 | tests/test-cases/parent.md#TC-P-36-E |
AssessmentAppointmentController | 无额度返回『额度不足或已过期』不建预约不发能量;并发双发仅落 1 条预约、能量仅发 1 次(幂等) |
TC-P-37-E |
预约状态 | 家长 | P2 | 异常 | tests/test-cases/parent.md#TC-P-37-E |
AssessmentAppointmentController | 状态机守卫拒绝非法跃迁返回 400;不存在预约 404;状态准确 |
TC-P-38-E |
预约取消 | 家长 | P2 | 异常 | tests/test-cases/parent.md#TC-P-38-E |
AssessmentAppointmentController | 越权取消 403 被拒(CFC-AP);终态预约取消返回『不可取消』;不退款逻辑按配置 |
TC-P-39-E |
DAN报告 | 家长 | P2 | 异常 | tests/test-cases/parent.md#TC-P-39-E |
DanAssessmentResultDTO | 未录入提示『结果待录入』不白屏;缺字段校验 400 提示缺哪项 |
TC-P-40-E |
AI方案 | 家长 | P2 | 异常 | tests/test-cases/parent.md#TC-P-40-E |
AIChatController/AiGateway |
Fallback 兜底方案+提示;未购会员请求付费板块返回『请先开通会员』拦截,不白生成 |
TC-P-41-E |
方案迭代 | 家长 | P2 | 异常 | tests/test-cases/parent.md#TC-P-41-E |
AIChatController | 断网 Fallback 保留其他板块不丢;连续点击幂等仅 1 次重生成 |
TC-P-42-E |
方案编辑 | 家长 | P2 | 异常 | tests/test-cases/parent.md#TC-P-42-E |
方案管理 | 超长 400 提示;越权编辑 403 被拒;编辑后状态标记已改 |
TC-P-43-E |
方案查看 | 家长 | P2 | 异常 | tests/test-cases/parent.md#TC-P-43-E |
方案管理 | 空方案展示占位不白屏;不存在 404 |
TC-P-44-E |
方案确认 | 家长 | P2 | 异常 | tests/test-cases/parent.md#TC-P-44-E |
方案状态机 | 未确认激活拦截『请先确认』;重复确认幂等仅 1 次 reviewed |
TC-P-45-E |
方案发布 | 家长 | P2 | 异常 | tests/test-cases/parent.md#TC-P-45-E |
方案管理 | 需审核配置时发布走审核流不直接 active;未 reviewed 发布拦截 |
TC-P-46-E |
方案激活 | 家长 | P2 | 异常 | tests/test-cases/parent.md#TC-P-46-E |
方案激活任务分解 | 已激活再激活幂等不重复生成任务;超时回滚不残半任务,状态回 reviewed |
TC-P-47-E |
方案任务 | 家长 | P2 | 异常 | tests/test-cases/parent.md#TC-P-47-E |
GrowthPlanController | 删任务同步方案并提示;非法 id 400;任务增删与方案一致 |
TC-P-48-E |
方案版本 | 家长 | P3 | 异常 | tests/test-cases/parent.md#TC-P-48-E |
方案管理 | 历史版本只读返回 403『版本不可篡改』;不存在 404 |
TC-P-49-E |
AI对话 | 家长 | P2 | 异常 | tests/test-cases/parent.md#TC-P-49-E |
AIChatController | 超长消息 400 提示;敏感词按合规拦截;LangGraph 不可用 Fallback 兜底回答,多轮上下文不丢 |
TC-P-50-E |
成长记录 | 家长 | P2 | 异常 | tests/test-cases/parent.md#TC-P-50-E |
GrowthController | 关联已删项跳过不报错;首访空态正常,时间线不白屏 |
TC-P-51-E |
成长里程碑 | 家长 | P3 | 异常 | tests/test-cases/parent.md#TC-P-51-E |
GrowthController | 重复标幂等仅 1 条;非法节点 400 |
TC-P-52-E |
商城浏览 | 家长 | P2 | 异常 | tests/test-cases/parent.md#TC-P-52-E |
MallController/danshop |
注入被转义返回安全结果;下架商品不展示;不 500 |
TC-P-53-E |
商品详情 | 家长 | P2 | 异常 | tests/test-cases/parent.md#TC-P-53-E |
MallController | 库存 0 提示『暂时缺货』;不存在 404 |
TC-P-54-E |
商城下单 | 家长 | P2 | 异常 | tests/test-cases/parent.md#TC-P-54-E |
MallController | 超库存拦截『库存不足』;重复提交幂等仅 1 单 |
TC-P-55-E |
订单支付 | 家长 | P2 | 异常 | tests/test-cases/parent.md#TC-P-55-E |
支付 | 超时回滚订单保持待支付;重复通知幂等仅 1 次 paid |
TC-P-56-E |
订单退款 | 家长 | P2 | 异常 | tests/test-cases/parent.md#TC-P-56-E |
订单服务 | 已发货按规则处理/拒;重复退款拦截仅 1 次 |
TC-P-57-E |
优惠券 | 家长 | P2 | 异常 | tests/test-cases/parent.md#TC-P-57-E |
优惠券 | 过期券不可用提示;未达门槛拦截『还差 X 元可用』;不重复抵扣 |
TC-P-58-E |
会员购买 | 家长 | P2 | 异常 | tests/test-cases/parent.md#TC-P-58-E |
MemberController | 失败回滚不解锁;重复购买幂等仅 1 次、不双扣 |
TC-P-59-E |
会员权益 | 家长 | P2 | 异常 | tests/test-cases/parent.md#TC-P-59-E |
MemberController | 过期提示『会员已失效』;越权 403;权益随档位 |
TC-P-60-E |
会员续费 | 家长 | P3 | 异常 | tests/test-cases/parent.md#TC-P-60-E |
MemberController | 未到期续费叠加计算正确(延期);负金额 400 |
TC-P-61-E |
联系人 | 家长 | P2 | 异常 | tests/test-cases/parent.md#TC-P-61-E |
ContactCard/contact-detail |
重复号码去重提示;非法格式 400;不建重复 |
TC-P-62-E |
联系人导入 | 家长 | P3 | 异常 | tests/test-cases/parent.md#TC-P-62-E |
ContactImport | 错误行跳过并报告『第 N 行格式错误』;非 CSV 拒绝;正确行入库 |
TC-P-63-E |
联系人权限 | 家长 | P2 | 异常 | tests/test-cases/parent.md#TC-P-63-E |
ContactCard | 越权查看 403;非法权限值 400;最小权限保底 |
TC-P-64-E |
个人资料 | 家长 | P2 | 异常 | tests/test-cases/parent.md#TC-P-64-E |
AuthController | 手机格式 400;昵称超长/非法字符拦截;保存生效 |
TC-P-65-E |
通知设置 | 家长 | P3 | 异常 | tests/test-cases/parent.md#TC-P-65-E |
消息服务 | 关键安全通知仍推送不被关;非法时间 400 |
TC-P-66-E |
隐私设置 | 家长 | P3 | 异常 | tests/test-cases/parent.md#TC-P-66-E |
隐私设置 | 非法范围 400;敏感字段最小权限保底不外露 |
TC-P-67-E |
报告代传/report-proxy | 家长 | P1 | 异常 | tests/test-cases/parent.md#TC-P-67-E |
报告代传/report-proxy | 越权代传他人孩子 403 被拒;报告归属校验失败不入档;授权令牌失效提示 |
TC-P-68-E |
家庭天盘 | 家长 | P2 | 异常 | tests/test-cases/parent.md#TC-P-68-E |
家庭天盘 | 缺失项降级展示不白屏;非成员访问 403;仅本家庭可见 |
TC-P-69-E |
精准营养 | 家长 | P2 | 异常 | tests/test-cases/parent.md#TC-P-69-E |
精准营养 | 负/超上限 400『热量需在合理区间』;非数字 400;目标生效影响食谱 |
TC-P-70-E |
舌诊情绪识别 | 家长 | P2 | 异常 | tests/test-cases/parent.md#TC-P-70-E |
舌诊情绪识别 | 非照片/模糊拒绝提示『请上传清晰舌苔照』;低置信度提示『识别不清晰,建议重拍』;隐私标注不外露 |
TC-P-71-E |
AuthController | 家长 | P2 | 异常 | tests/test-cases/parent.md#TC-P-71-E |
AuthController | 有在途订单拦截『请先处理进行中订单』;注销后 token 失效 401 不可登录 |
TC-P-72-E |
数据导出(GDPR) | 家长 | P2 | 异常 | tests/test-cases/parent.md#TC-P-72-E |
数据导出(GDPR) | 越权导出 403;频次限制提示『导出过于频繁』;敏感字段脱敏 |
TC-P-73-E |
家庭/成员 | 家长 | P2 | 异常 | tests/test-cases/parent.md#TC-P-73-E |
家庭/成员 | 非本家庭孩子不可选 400;切换保持各孩子上下文隔离不串 |
TC-P-74-E |
规划师绑定 | 家长 | P2 | 异常 | tests/test-cases/parent.md#TC-P-74-E |
规划师绑定 | 在途未完成提示『请先处理在途服务』;非本家庭 T 绑定 400 被拒 |
TC-P-75-E |
优惠券 | 家长 | P2 | 异常 | tests/test-cases/parent.md#TC-P-75-E |
优惠券 | 库存 0 提示『已领完』;重复领幂等仅入卡包 1 张 |
TC-P-76-E |
活动管理 | 家长 | P1 | 异常 | tests/test-cases/parent.md#TC-P-76-E |
活动管理 | 并发超卖拦截仅 1 人成功(CFC 已修 bug 回归);满额拒『名额已满』;重复报名幂等 |
TC-P-77-E |
活动 | 家长 | P2 | 异常 | tests/test-cases/parent.md#TC-P-77-E |
活动 | 重复打卡幂等仅计 1 次;刷量风控拦截;进度累计正确 |
TC-P-78-E |
消息服务 | 家长 | P2 | 异常 | tests/test-cases/parent.md#TC-P-78-E |
消息服务 | 越权消息不可见 403;不存在 404;分页正常 |
TC-P-79-E |
消息服务 | 家长 | P2 | 异常 | tests/test-cases/parent.md#TC-P-79-E |
消息服务 | 关键安全通知不可关;非法时间 400 |
TC-P-80-E |
会员/订单 | 家长 | P2 | 异常 | tests/test-cases/parent.md#TC-P-80-E |
会员/订单 | 已消费不退提示;重复退拦截;发票信息校验缺失字段 400 |
TC-P-81-E |
方案/任务 | 家长 | P2 | 异常 | tests/test-cases/parent.md#TC-P-81-E |
方案/任务 | 过期草稿提示『草稿已失效』;并发存后者覆盖且提示冲突 |
TC-P-82-E |
搜索 | 家长 | P2 | 异常 | tests/test-cases/parent.md#TC-P-82-E |
搜索 | 越权结果过滤不可见;空结果不报错提示『请输入关键词』 |
TC-P-83-E |
客服 | 家长 | P2 | 异常 | tests/test-cases/parent.md#TC-P-83-E |
客服 | 敏感信息脱敏存储;附件超限 400『附件不超过 10MB』 |
TC-P-84-E |
分享 | 家长 | P2 | 异常 | tests/test-cases/parent.md#TC-P-84-E |
分享 | 失效链接提示『分享已失效』;越权分享 403 被拒 |
TC-P-85-E |
AuthController | 家长 | P2 | 异常 | tests/test-cases/parent.md#TC-P-85-E |
AuthController | 异常设备二次验证/拦截;退出后旧 token 失效 401 |
TC-P-86-E |
勋章/排行 | 家长 | P2 | 异常 | tests/test-cases/parent.md#TC-P-86-E |
勋章/排行 | 非本家庭榜不可见 403;排名仅本家庭数据,刷新即更新 |
TC-P-01-P |
家庭 | 家长 | P1 | 权限 | tests/test-cases/parent.md#TC-P-01-P |
FamilyInviteController | 非归属数据访问统一 403/401,不泄露他人数据;横向越权被拒 |
TC-P-02-P |
家庭/成员 | 家长 | P1 | 权限 | tests/test-cases/parent.md#TC-P-02-P |
FamilyInviteController | 非归属数据访问统一 403/401,不泄露他人数据;横向越权被拒 |
TC-P-03-P |
成员资料 | 家长 | P1 | 权限 | tests/test-cases/parent.md#TC-P-03-P |
FamilyMembersController | 非归属数据访问统一 403/401,不泄露他人数据;横向越权被拒 |
TC-P-04-P |
关系图 | 家长 | P1 | 权限 | tests/test-cases/parent.md#TC-P-04-P |
关系类型 CRUD/前端选择器 | 非归属数据访问统一 403/401,不泄露他人数据;横向越权被拒 |
TC-P-05-P |
任务 | 家长 | P1 | 权限 | tests/test-cases/parent.md#TC-P-05-P |
TaskController | 非归属数据访问统一 403/401,不泄露他人数据;横向越权被拒 |
TC-P-06-P |
任务审核 | 家长 | P1 | 权限 | tests/test-cases/parent.md#TC-P-06-P |
TaskController/PointsController |
非归属数据访问统一 403/401,不泄露他人数据;横向越权被拒 |
TC-P-07-P |
心愿 | 家长 | P1 | 权限 | tests/test-cases/parent.md#TC-P-07-P |
WishController/RewardController |
非归属数据访问统一 403/401,不泄露他人数据;横向越权被拒 |
TC-P-08-P |
能量 | 家长 | P1 | 权限 | tests/test-cases/parent.md#TC-P-08-P |
EnergyController | 非归属数据访问统一 403/401,不泄露他人数据;横向越权被拒 |
TC-P-09-P |
测评订单 | 家长 | P1 | 权限 | tests/test-cases/parent.md#TC-P-09-P |
AssessmentAppointmentController | 非归属数据访问统一 403/401,不泄露他人数据;横向越权被拒 |
TC-P-10-P |
健康报告 | 家长 | P1 | 权限 | tests/test-cases/parent.md#TC-P-10-P |
健康报告上传解析 | 非归属数据访问统一 403/401,不泄露他人数据;横向越权被拒 |
TC-P-11-P |
报告查看 | 家长 | P1 | 权限 | tests/test-cases/parent.md#TC-P-11-P |
报告解析 | 非归属数据访问统一 403/401,不泄露他人数据;横向越权被拒 |
TC-P-12-P |
饮食推荐 | 家长 | P1 | 权限 | tests/test-cases/parent.md#TC-P-12-P |
饮食推荐系统 | 非归属数据访问统一 403/401,不泄露他人数据;横向越权被拒 |
TC-P-13-P |
AI 方案 | 家长 | P1 | 权限 | tests/test-cases/parent.md#TC-P-13-P |
AI 统一走 LangGraph;`AiGateway | 非归属数据访问统一 403/401,不泄露他人数据;横向越权被拒 |
TC-P-14-P |
方案提交 | 家长 | P1 | 权限 | tests/test-cases/parent.md#TC-P-14-P |
方案状态机 | 非归属数据访问统一 403/401,不泄露他人数据;横向越权被拒 |
TC-P-15-P |
双角色 | 家长 | P1 | 权限 | tests/test-cases/parent.md#TC-P-15-P |
POST /api/family/member/switch`(替代废弃 switch-mode);双角色铁律 | 非归属数据访问统一 403/401,不泄露他人数据;横向越权被拒 |
TC-P-16-P |
会员 | 家长 | P1 | 权限 | tests/test-cases/parent.md#TC-P-16-P |
MembershipController/ProductOrderController |
非归属数据访问统一 403/401,不泄露他人数据;横向越权被拒 |
TC-P-17-P |
积分/成长 | 家长 | P1 | 权限 | tests/test-cases/parent.md#TC-P-17-P |
PointsController/GrowthController |
非归属数据访问统一 403/401,不泄露他人数据;横向越权被拒 |
TC-P-18-P |
AI 对话 | 家长 | P1 | 权限 | tests/test-cases/parent.md#TC-P-18-P |
AIChatController`;LangGraph RAG | 非归属数据访问统一 403/401,不泄露他人数据;横向越权被拒 |
TC-P-19-P |
能量配置 | 家长 | P2 | 权限 | tests/test-cases/parent.md#TC-P-19-P |
维度配置 | 非归属数据访问统一 403/401,不泄露他人数据;横向越权被拒 |
TC-P-20-P |
健康报告 | 家长 | P1 | 权限 | tests/test-cases/parent.md#TC-P-20-P |
报告解析中台/`POST /api/media/upload | 非归属数据访问统一 403/401,不泄露他人数据;横向越权被拒 |
TC-P-21-P |
报告解析 | 家长 | P1 | 权限 | tests/test-cases/parent.md#TC-P-21-P |
/api/admin/report-parser/types | 非归属数据访问统一 403/401,不泄露他人数据;横向越权被拒 |
TC-P-22-P |
报告预览 | 家长 | P1 | 权限 | tests/test-cases/parent.md#TC-P-22-P |
解析中台 | 非归属数据访问统一 403/401,不泄露他人数据;横向越权被拒 |
TC-P-23-P |
报告入库 | 家长 | P1 | 权限 | tests/test-cases/parent.md#TC-P-23-P |
解析中台 | 非归属数据访问统一 403/401,不泄露他人数据;横向越权被拒 |
TC-P-24-P |
报告管理 | 家长 | P1 | 权限 | tests/test-cases/parent.md#TC-P-24-P |
报告管理 | 非归属数据访问统一 403/401,不泄露他人数据;横向越权被拒 |
TC-P-25-P |
报告趋势 | 家长 | P1 | 权限 | tests/test-cases/parent.md#TC-P-25-P |
成长/报告 | 非归属数据访问统一 403/401,不泄露他人数据;横向越权被拒 |
TC-P-26-P |
饮食推荐 | 家长 | P1 | 权限 | tests/test-cases/parent.md#TC-P-26-P |
饮食推荐系统 | 非归属数据访问统一 403/401,不泄露他人数据;横向越权被拒 |
TC-P-27-P |
家庭食谱 | 家长 | P1 | 权限 | tests/test-cases/parent.md#TC-P-27-P |
饮食推荐/家庭食谱 | 非归属数据访问统一 403/401,不泄露他人数据;横向越权被拒 |
TC-P-28-P |
食谱筛选 | 家长 | P2 | 权限 | tests/test-cases/parent.md#TC-P-28-P |
饮食推荐 | 非归属数据访问统一 403/401,不泄露他人数据;横向越权被拒 |
TC-P-29-P |
食谱收藏 | 家长 | P2 | 权限 | tests/test-cases/parent.md#TC-P-29-P |
饮食推荐 | 非归属数据访问统一 403/401,不泄露他人数据;横向越权被拒 |
TC-P-30-P |
食谱营养 | 家长 | P2 | 权限 | tests/test-cases/parent.md#TC-P-30-P |
饮食推荐 | 非归属数据访问统一 403/401,不泄露他人数据;横向越权被拒 |
TC-P-31-P |
测评类型 | 家长 | P1 | 权限 | tests/test-cases/parent.md#TC-P-31-P |
DanAssessmentController | 非归属数据访问统一 403/401,不泄露他人数据;横向越权被拒 |
TC-P-32-P |
测评规划师 | 家长 | P1 | 权限 | tests/test-cases/parent.md#TC-P-32-P |
测评订单 | 非归属数据访问统一 403/401,不泄露他人数据;横向越权被拒 |
TC-P-33-P |
测评下单 | 家长 | P1 | 权限 | tests/test-cases/parent.md#TC-P-33-P |
AssessmentOrder | 非归属数据访问统一 403/401,不泄露他人数据;横向越权被拒 |
TC-P-34-P |
测评支付 | 家长 | P1 | 权限 | tests/test-cases/parent.md#TC-P-34-P |
支付/`AssessmentQuota | 非归属数据访问统一 403/401,不泄露他人数据;横向越权被拒 |
TC-P-35-P |
测评额度 | 家长 | P1 | 权限 | tests/test-cases/parent.md#TC-P-35-P |
AssessmentQuota | 非归属数据访问统一 403/401,不泄露他人数据;横向越权被拒 |
TC-P-36-P |
测评预约 | 家长 | P1 | 权限 | tests/test-cases/parent.md#TC-P-36-P |
AssessmentAppointmentController | 非归属数据访问统一 403/401,不泄露他人数据;横向越权被拒 |
TC-P-37-P |
预约状态 | 家长 | P1 | 权限 | tests/test-cases/parent.md#TC-P-37-P |
AssessmentAppointmentController | 非归属数据访问统一 403/401,不泄露他人数据;横向越权被拒 |
TC-P-38-P |
预约取消 | 家长 | P1 | 权限 | tests/test-cases/parent.md#TC-P-38-P |
AssessmentAppointmentController | 非归属数据访问统一 403/401,不泄露他人数据;横向越权被拒 |
TC-P-39-P |
DAN报告 | 家长 | P1 | 权限 | tests/test-cases/parent.md#TC-P-39-P |
DanAssessmentResultDTO | 非归属数据访问统一 403/401,不泄露他人数据;横向越权被拒 |
TC-P-40-P |
AI方案 | 家长 | P1 | 权限 | tests/test-cases/parent.md#TC-P-40-P |
AIChatController/AiGateway |
非归属数据访问统一 403/401,不泄露他人数据;横向越权被拒 |
TC-P-41-P |
方案迭代 | 家长 | P1 | 权限 | tests/test-cases/parent.md#TC-P-41-P |
AIChatController | 非归属数据访问统一 403/401,不泄露他人数据;横向越权被拒 |
TC-P-42-P |
方案编辑 | 家长 | P1 | 权限 | tests/test-cases/parent.md#TC-P-42-P |
方案管理 | 非归属数据访问统一 403/401,不泄露他人数据;横向越权被拒 |
TC-P-43-P |
方案查看 | 家长 | P1 | 权限 | tests/test-cases/parent.md#TC-P-43-P |
方案管理 | 非归属数据访问统一 403/401,不泄露他人数据;横向越权被拒 |
TC-P-44-P |
方案确认 | 家长 | P1 | 权限 | tests/test-cases/parent.md#TC-P-44-P |
方案状态机 | 非归属数据访问统一 403/401,不泄露他人数据;横向越权被拒 |
TC-P-45-P |
方案发布 | 家长 | P1 | 权限 | tests/test-cases/parent.md#TC-P-45-P |
方案管理 | 非归属数据访问统一 403/401,不泄露他人数据;横向越权被拒 |
TC-P-46-P |
方案激活 | 家长 | P1 | 权限 | tests/test-cases/parent.md#TC-P-46-P |
方案激活任务分解 | 非归属数据访问统一 403/401,不泄露他人数据;横向越权被拒 |
TC-P-47-P |
方案任务 | 家长 | P1 | 权限 | tests/test-cases/parent.md#TC-P-47-P |
GrowthPlanController | 非归属数据访问统一 403/401,不泄露他人数据;横向越权被拒 |
TC-P-48-P |
方案版本 | 家长 | P2 | 权限 | tests/test-cases/parent.md#TC-P-48-P |
方案管理 | 非归属数据访问统一 403/401,不泄露他人数据;横向越权被拒 |
TC-P-49-P |
AI对话 | 家长 | P1 | 权限 | tests/test-cases/parent.md#TC-P-49-P |
AIChatController | 非归属数据访问统一 403/401,不泄露他人数据;横向越权被拒 |
TC-P-50-P |
成长记录 | 家长 | P1 | 权限 | tests/test-cases/parent.md#TC-P-50-P |
GrowthController | 非归属数据访问统一 403/401,不泄露他人数据;横向越权被拒 |
TC-P-51-P |
成长里程碑 | 家长 | P2 | 权限 | tests/test-cases/parent.md#TC-P-51-P |
GrowthController | 非归属数据访问统一 403/401,不泄露他人数据;横向越权被拒 |
TC-P-52-P |
商城浏览 | 家长 | P1 | 权限 | tests/test-cases/parent.md#TC-P-52-P |
MallController/danshop |
非归属数据访问统一 403/401,不泄露他人数据;横向越权被拒 |
TC-P-53-P |
商品详情 | 家长 | P1 | 权限 | tests/test-cases/parent.md#TC-P-53-P |
MallController | 非归属数据访问统一 403/401,不泄露他人数据;横向越权被拒 |
TC-P-54-P |
商城下单 | 家长 | P1 | 权限 | tests/test-cases/parent.md#TC-P-54-P |
MallController | 非归属数据访问统一 403/401,不泄露他人数据;横向越权被拒 |
TC-P-55-P |
订单支付 | 家长 | P1 | 权限 | tests/test-cases/parent.md#TC-P-55-P |
支付 | 非归属数据访问统一 403/401,不泄露他人数据;横向越权被拒 |
TC-P-56-P |
订单退款 | 家长 | P1 | 权限 | tests/test-cases/parent.md#TC-P-56-P |
订单服务 | 非归属数据访问统一 403/401,不泄露他人数据;横向越权被拒 |
TC-P-57-P |
优惠券 | 家长 | P1 | 权限 | tests/test-cases/parent.md#TC-P-57-P |
优惠券 | 非归属数据访问统一 403/401,不泄露他人数据;横向越权被拒 |
TC-P-58-P |
会员购买 | 家长 | P1 | 权限 | tests/test-cases/parent.md#TC-P-58-P |
MemberController | 非归属数据访问统一 403/401,不泄露他人数据;横向越权被拒 |
TC-P-59-P |
会员权益 | 家长 | P1 | 权限 | tests/test-cases/parent.md#TC-P-59-P |
MemberController | 非归属数据访问统一 403/401,不泄露他人数据;横向越权被拒 |
TC-P-60-P |
会员续费 | 家长 | P2 | 权限 | tests/test-cases/parent.md#TC-P-60-P |
MemberController | 非归属数据访问统一 403/401,不泄露他人数据;横向越权被拒 |
TC-P-61-P |
联系人 | 家长 | P1 | 权限 | tests/test-cases/parent.md#TC-P-61-P |
ContactCard/contact-detail |
非归属数据访问统一 403/401,不泄露他人数据;横向越权被拒 |
TC-P-62-P |
联系人导入 | 家长 | P2 | 权限 | tests/test-cases/parent.md#TC-P-62-P |
ContactImport | 非归属数据访问统一 403/401,不泄露他人数据;横向越权被拒 |
TC-P-63-P |
联系人权限 | 家长 | P1 | 权限 | tests/test-cases/parent.md#TC-P-63-P |
ContactCard | 非归属数据访问统一 403/401,不泄露他人数据;横向越权被拒 |
TC-P-64-P |
个人资料 | 家长 | P1 | 权限 | tests/test-cases/parent.md#TC-P-64-P |
AuthController | 非归属数据访问统一 403/401,不泄露他人数据;横向越权被拒 |
TC-P-65-P |
通知设置 | 家长 | P2 | 权限 | tests/test-cases/parent.md#TC-P-65-P |
消息服务 | 非归属数据访问统一 403/401,不泄露他人数据;横向越权被拒 |
TC-P-66-P |
隐私设置 | 家长 | P2 | 权限 | tests/test-cases/parent.md#TC-P-66-P |
隐私设置 | 非归属数据访问统一 403/401,不泄露他人数据;横向越权被拒 |
TC-P-67-P |
报告代传/report-proxy | 家长 | P0 | 权限 | tests/test-cases/parent.md#TC-P-67-P |
报告代传/report-proxy | 非归属数据访问统一 403/401,不泄露他人数据;横向越权被拒 |
TC-P-68-P |
家庭天盘 | 家长 | P1 | 权限 | tests/test-cases/parent.md#TC-P-68-P |
家庭天盘 | 非归属数据访问统一 403/401,不泄露他人数据;横向越权被拒 |
TC-P-69-P |
精准营养 | 家长 | P1 | 权限 | tests/test-cases/parent.md#TC-P-69-P |
精准营养 | 非归属数据访问统一 403/401,不泄露他人数据;横向越权被拒 |
TC-P-70-P |
舌诊情绪识别 | 家长 | P1 | 权限 | tests/test-cases/parent.md#TC-P-70-P |
舌诊情绪识别 | 非归属数据访问统一 403/401,不泄露他人数据;横向越权被拒 |
TC-P-71-P |
AuthController | 家长 | P1 | 权限 | tests/test-cases/parent.md#TC-P-71-P |
AuthController | 非归属数据访问统一 403/401,不泄露他人数据;横向越权被拒 |
TC-P-72-P |
数据导出(GDPR) | 家长 | P1 | 权限 | tests/test-cases/parent.md#TC-P-72-P |
数据导出(GDPR) | 非归属数据访问统一 403/401,不泄露他人数据;横向越权被拒 |
TC-P-73-P |
家庭/成员 | 家长 | P1 | 权限 | tests/test-cases/parent.md#TC-P-73-P |
家庭/成员 | 非归属数据访问统一 403/401,不泄露他人数据;横向越权被拒 |
TC-P-74-P |
规划师绑定 | 家长 | P1 | 权限 | tests/test-cases/parent.md#TC-P-74-P |
规划师绑定 | 非归属数据访问统一 403/401,不泄露他人数据;横向越权被拒 |
TC-P-75-P |
优惠券 | 家长 | P1 | 权限 | tests/test-cases/parent.md#TC-P-75-P |
优惠券 | 非归属数据访问统一 403/401,不泄露他人数据;横向越权被拒 |
TC-P-76-P |
活动管理 | 家长 | P0 | 权限 | tests/test-cases/parent.md#TC-P-76-P |
活动管理 | 非归属数据访问统一 403/401,不泄露他人数据;横向越权被拒 |
TC-P-77-P |
活动 | 家长 | P1 | 权限 | tests/test-cases/parent.md#TC-P-77-P |
活动 | 非归属数据访问统一 403/401,不泄露他人数据;横向越权被拒 |
TC-P-78-P |
消息服务 | 家长 | P1 | 权限 | tests/test-cases/parent.md#TC-P-78-P |
消息服务 | 非归属数据访问统一 403/401,不泄露他人数据;横向越权被拒 |
TC-P-79-P |
消息服务 | 家长 | P1 | 权限 | tests/test-cases/parent.md#TC-P-79-P |
消息服务 | 非归属数据访问统一 403/401,不泄露他人数据;横向越权被拒 |
TC-P-80-P |
会员/订单 | 家长 | P1 | 权限 | tests/test-cases/parent.md#TC-P-80-P |
会员/订单 | 非归属数据访问统一 403/401,不泄露他人数据;横向越权被拒 |
TC-P-81-P |
方案/任务 | 家长 | P1 | 权限 | tests/test-cases/parent.md#TC-P-81-P |
方案/任务 | 非归属数据访问统一 403/401,不泄露他人数据;横向越权被拒 |
TC-P-82-P |
搜索 | 家长 | P1 | 权限 | tests/test-cases/parent.md#TC-P-82-P |
搜索 | 非归属数据访问统一 403/401,不泄露他人数据;横向越权被拒 |
TC-P-83-P |
客服 | 家长 | P1 | 权限 | tests/test-cases/parent.md#TC-P-83-P |
客服 | 非归属数据访问统一 403/401,不泄露他人数据;横向越权被拒 |
TC-P-84-P |
分享 | 家长 | P1 | 权限 | tests/test-cases/parent.md#TC-P-84-P |
分享 | 非归属数据访问统一 403/401,不泄露他人数据;横向越权被拒 |
TC-P-85-P |
AuthController | 家长 | P1 | 权限 | tests/test-cases/parent.md#TC-P-85-P |
AuthController | 非归属数据访问统一 403/401,不泄露他人数据;横向越权被拒 |
TC-P-86-P |
勋章/排行 | 家长 | P1 | 权限 | tests/test-cases/parent.md#TC-P-86-P |
勋章/排行 | 非归属数据访问统一 403/401,不泄露他人数据;横向越权被拒 |
TC-P-87 |
能量/任务 | 家长 | P1 | 功能 | tests/test-cases/parent.md#TC-P-87 |
EnergyRuleEngine/TaskController |
B 对应维度 balance/totalEarned +amount;EnergyLog.sourceType=task、balanceAfter 正确;概览/沙盘随新值刷新 |
TC-P-88 |
能量/心愿 | 家长 | P1 | 功能 | tests/test-cases/parent.md#TC-P-88 |
EnergyController/RewardController |
扣减成功,EnergyLog 负 amount、balanceAfter=balance-额;balance/totalSpent 同步;心愿已兑换 |
TC-P-89 |
能量/手动 | 家长 | P2 | 功能 | tests/test-cases/parent.md#TC-P-89 |
EnergyController | 指定维度 +amount;EnergyLog.sourceType=manual 留痕;balanceAfter 更新 |
TC-P-90 |
能量/日上限 | 家长 | P1 | 功能 | tests/test-cases/parent.md#TC-P-90 |
DimensionDailyLimit | 累计达 N 后新增触发不再累加(或截断到上限);跨日 00:00 清零可重新获取 |
TC-P-91 |
能量/健康报告 | 家长 | P0 | 功能 | tests/test-cases/parent.md#TC-P-91 |
HealthReportController | 七维/六维评分刷新;概览/沙盘/score-history 按新值重算;时间序列反映改善 |
TC-P-92 |
能量/配置 | 家长 | P1 | 功能 | tests/test-cases/parent.md#TC-P-92 |
EnergyController`/维度配置 | 按新口径重算并展示;存量重算提示 |
TC-P-93 |
能量/文章·活动 | 家长 | P1 | 功能 | tests/test-cases/parent.md#TC-P-93 |
ArticleService/ActivityService |
对应维度 +amount;sourceType=article/activity;balanceAfter 更新 |
TC-P-87-E |
能量/任务 | 家长 | P2 | 异常 | tests/test-cases/parent.md#TC-P-87-E |
EnergyRuleEngine | 1. 重复审批幂等不重复加、无第二条 EnergyLog 2. 无归因维度不 500、按规则落 sourceType 或不加 3. 参数非法统一 400、不改动能量 4. 规则异常告警、不写脏流水 |
TC-P-88-E |
能量/心愿 | 家长 | P1 | 异常 | tests/test-cases/parent.md#TC-P-88-E |
EnergyController/RewardController |
1. 余额不足明确"能量不足"、心愿保持待审批、无负余额 2. 并发仅一次成功、二次幂等拒 3. 已兑换再提交拒、无负流水 4. 参数非法 400、不扣减 |
TC-P-89-E |
能量/手动 | 家长 | P2 | 异常 | tests/test-cases/parent.md#TC-P-89-E |
EnergyController | 1. 400 拦截不发放 2. 400 不写脏数据 3. 按幂等/业务规则不重复加 |
TC-P-90-E |
能量/日上限 | 家长 | P2 | 异常 | tests/test-cases/parent.md#TC-P-90-E |
DimensionDailyLimit | 1. 触顶后其余来源同维度受限 2. 手动口径断言一致 3. 以服务端日期为准、不绕过 4. 上限 0/负 拒绝配置或按 0、不崩溃 |
TC-P-91-E |
能量/健康报告 | 家长 | P1 | 异常 | tests/test-cases/parent.md#TC-P-91-E |
HealthReportController | 1. 不刷新、原评分保留 2. 类型不一致不可比/提示、不串维度 3. 该维度保持上一值或空态、不 500 4. 重复入库幂等不重复刷新 |
TC-P-92-E |
能量/配置 | 家长 | P2 | 异常 | tests/test-cases/parent.md#TC-P-92-E |
EnergyController`/维度配置 | 1. 报警并拒或归一化、不静默错算 2. 展示兜底旧值并提示"同步中"、不显示错乱 3. 400 拦截 |
TC-P-93-E |
能量/文章·活动 | 家长 | P2 | 异常 | tests/test-cases/parent.md#TC-P-93-E |
ArticleService/ActivityService |
1. 风控拦截不计能量 2. 触顶不累加 3. 按规则回收或保留、不双发 4. 参与被拒不发放 |
TC-P-87-P |
能量/任务 | 家长 | P1 | 权限 | tests/test-cases/parent.md#TC-P-87-P |
JwtInterceptor`+role | 1. 非本家庭能量访问 403 2. 孩子端无 grant 入口、直接调被 role 校验拒 |
TC-P-88-P |
能量/心愿 | 家长 | P1 | 权限 | tests/test-cases/parent.md#TC-P-88-P |
EnergyController | 1. 非本家庭心愿 403 2. 孩子端无扣减入口、直接调被拒 |
TC-P-89-P |
能量/手动 | 家长 | P1 | 权限 | tests/test-cases/parent.md#TC-P-89-P |
JwtInterceptor`+role | 1. 非本家庭 grant 403 2. 孩子端拒 |
TC-P-90-P |
能量/日上限 | 家长 | P2 | 权限 | tests/test-cases/parent.md#TC-P-90-P |
DimensionDailyLimit | 1. 他人累计不可见 403 2. 越权改配置 403 |
TC-P-91-P |
能量/健康报告 | 家长 | P1 | 权限 | tests/test-cases/parent.md#TC-P-91-P |
HealthReportController | 非本家庭健康维度数据 403、不泄露 |
TC-P-92-P |
能量/配置 | 家长 | P1 | 权限 | tests/test-cases/parent.md#TC-P-92-P |
EnergyController | 非 admin 改全局 403 |
TC-P-93-P |
能量/文章·活动 | 家长 | P2 | 权限 | tests/test-cases/parent.md#TC-P-93-P |
ArticleService/ActivityService |
非本家庭流水 403 |
TC-P-N01 |
健康报告 | 家长 | P1 | 性能 | tests/test-cases/parent.md#TC-P-N01 |
健康报告上传解析 | 上传+解析 ≤ 30s;超时走 AiGateway 友好降级而非 500;进度可见 |
TC-P-N02 |
AI 方案 | 家长 | P1 | 性能 | tests/test-cases/parent.md#TC-P-N02 |
AiGateway/LangGraph | 各方案独立完整、数据不串;单请求 P95 ≤ 15s;LangGraph 超时回退 Fallback |
TC-P-N03 |
任务 | 家长 | P2 | 性能 | tests/test-cases/parent.md#TC-P-N03 |
TaskController | 首屏 ≤ 2s;翻页流畅;分页/虚拟滚动生效 |
TC-P-N04 |
全局搜索 | 家长 | P2 | 性能 | tests/test-cases/parent.md#TC-P-N04 |
搜索接口 | 搜索结果 ≤ 1.5s;匹配高亮;空结果空态 |
TC-P-N05 |
报告查看 | 家长 | P2 | 性能 | tests/test-cases/parent.md#TC-P-N05 |
报告解析 | 列表/详情渲染 ≤ 2s;七维评分刷新不卡顿 |
TC-P-N06 |
双角色 | 家长 | P1 | 兼容 | tests/test-cases/parent.md#TC-P-N06 |
双角色铁律 | 四端功能一致;切回家长需密码;孩子端不可回切 |
TC-P-N07 |
饮食推荐 | 家长 | P2 | 兼容 | tests/test-cases/parent.md#TC-P-N07 |
饮食推荐 | 推荐列表与可吃/慎吃标签布局正常;图片自适应 |
TC-P-N08 |
设置 | 家长 | P2 | 兼容 | tests/test-cases/parent.md#TC-P-N08 |
前端适配 | 无样式错位;可点区域 ≥ 44px;无横向滚动 |
TC-P-N09 |
报告闭环 | 家长 | P0 | 安全 | tests/test-cases/parent.md#TC-P-N09 |
报告鉴权 | 返回 403(IDOR 横向越权拦截);不泄露跨家庭数据 |
TC-P-N10 |
AI 对话 | 家长 | P1 | 安全 | tests/test-cases/parent.md#TC-P-N10 |
AIChatController | 输入后端 HTML 转义存储/渲染;无脚本执行 |
TC-P-N11 |
健康报告 | 家长 | P0 | 安全 | tests/test-cases/parent.md#TC-P-N11 |
上传校验 | 类型/大小校验拒绝(400/413);不落盘执行;不触发解析 |
TC-P-N12 |
双角色 | 家长 | P1 | 安全 | tests/test-cases/parent.md#TC-P-N12 |
switch 接口鉴权 | 服务端二次校验身份;篡改无效;不越权 |
TC-P-N13 |
设置 | 家长 | P1 | 安全 | tests/test-cases/parent.md#TC-P-N13 |
数据安全 | 无身份证/手机号明文泄露;日志脱敏;状态变更含 CSRF token 校验 |
TC-T-01 |
认证/双角色 | 规划师 | P0 | 权限 | tests/test-cases/teacher.md#TC-T-01 |
AuthController`;规划师可切回家长 | 进入仪表板;可切回自身家长视角;越权访问无关家庭被拒 |
TC-T-02 |
家庭绑定 | 规划师 | P1 | 功能 | tests/test-cases/teacher.md#TC-T-02 |
FamilyInviteController | 家庭出现在列表,可见成员;无效码提示失败;重复绑定幂等 |
TC-T-03 |
健康报告 | 规划师 | P0 | 功能 | tests/test-cases/teacher.md#TC-T-03 |
报告上传解析;规划师代传 | 报告进入孩子档案;健康列表可见;识别失败进草稿/未知聚类 |
TC-T-04 |
报告审核 | 规划师 | P1 | 功能 | tests/test-cases/teacher.md#TC-T-04 |
报告审核 | 草稿确认入库,健康报告列表可见;确认前可取消不入库 |
TC-T-05 |
方案管理 | 规划师 | P0 | 功能 | tests/test-cases/teacher.md#TC-T-05 |
方案管理;黑盒回归项 | 列表正常渲染(无白屏);函数不报未定义 |
TC-T-06 |
方案审核 | 规划师 | P0 | 功能 | tests/test-cases/teacher.md#TC-T-06 |
方案状态机 | 状态 generated→reviewed |
TC-T-07 |
方案激活 | 规划师 | P0 | 功能 | tests/test-cases/teacher.md#TC-T-07 |
激活拆任务 | 状态 reviewed→active;生成引导任务+模板任务;孩子 B 出现方案启动任务 |
TC-T-08 |
方案激活·幂等 | 规划师 | P0 | 异常 | tests/test-cases/teacher.md#TC-T-08 |
幂等约束(黑盒回归) | 返回状态异常提示,不重复生成任务(幂等) |
TC-T-09 |
任务审核 | 规划师 | P1 | 功能 | tests/test-cases/teacher.md#TC-T-09 |
TaskController | 通过→孩子得积分;驳回→退回重做;越权审核非绑定家庭被拒 |
TC-T-10 |
测评录入 | 规划师 | P0 | 功能 | tests/test-cases/teacher.md#TC-T-10 |
AssessmentAppointmentController/DanAssessmentController |
结果可见;触发规则引擎自动生成方案(generated);必填缺失→校验拦截;重复录入覆盖 |
TC-T-11 |
成长计划 | 规划师 | P1 | 功能 | tests/test-cases/teacher.md#TC-T-11 |
GrowthPlanController`;黑盒回归 | 列表显示自己创建的计划(childName/状态/时间);不再 400 |
TC-T-12 |
套餐 | 规划师 | P1 | 功能 | tests/test-cases/teacher.md#TC-T-12 |
GuidePackageController | 上架前提交审核;审核通过后可被市场购买;任务项为空→校验拦截 |
TC-T-13 |
数据隔离 | 规划师 | P1 | 权限 | tests/test-cases/teacher.md#TC-T-13 |
控制器内 role 检查 | 非绑定家庭统一 403;仅见绑定家庭数据 |
TC-T-14 |
方案编辑 | 规划师 | P1 | 功能 | tests/test-cases/teacher.md#TC-T-14 |
方案管理 | 编辑后状态标记已改;保存生效 |
TC-T-15 |
套餐任务 | 规划师 | P1 | 功能 | tests/test-cases/teacher.md#TC-T-15 |
GuidePackageController | 空套餐拦截上架;重算后任务项正确 |
TC-T-16 |
健康总览 | 规划师 | P1 | 功能 | tests/test-cases/teacher.md#TC-T-16 |
仪表板 | 数据缺失项降级展示不 500 |
TC-T-17 |
计划进度 | 规划师 | P1 | 功能 | tests/test-cases/teacher.md#TC-T-17 |
GrowthPlanController | 进度计算准确;与任务状态一致 |
TC-T-18 |
批量任务 | 规划师 | P1 | 功能 | tests/test-cases/teacher.md#TC-T-18 |
TaskController | 部分失败不影响其他成员;各自独立落库 |
TC-T-19 |
消息推送 | 规划师 | P1 | 功能 | tests/test-cases/teacher.md#TC-T-19 |
消息服务 | 客户端收到;免打扰设置生效 |
TC-T-20 |
退出/切换 | 规划师 | P1 | 功能 | tests/test-cases/teacher.md#TC-T-20 |
AuthController | 退出清缓存;切回家长视角正常 |
TC-T-21 |
报告对比 | 规划师 | P1 | 功能 | tests/test-cases/teacher.md#TC-T-21 |
报告管理 | 报告类型一致才可比对;差异清晰标注 |
TC-T-22 |
方案归档 | 规划师 | P2 | 功能 | tests/test-cases/teacher.md#TC-T-22 |
方案管理 | 归档后方案仅可读,不可再编辑/激活 |
TC-T-23 |
报告代传/report-proxy | 规划师 | P1 | 功能 | tests/test-cases/teacher.md#TC-T-23 |
报告代传/report-proxy | 达成目标:帮客户上传;边界:非绑定家庭拒;识别失败进草稿 |
TC-T-24 |
规划师绑定 | 规划师 | P1 | 功能 | tests/test-cases/teacher.md#TC-T-24 |
规划师绑定 | 达成目标:更换绑定;边界:在途方案/预约处理;非绑定家庭不可操作 |
TC-T-25 |
舌诊情绪识别 | 规划师 | P1 | 功能 | tests/test-cases/teacher.md#TC-T-25 |
舌诊情绪识别 | 达成目标:录入识别结果;边界:识别失败回退人工 |
TC-T-26 |
精准营养 | 规划师 | P1 | 功能 | tests/test-cases/teacher.md#TC-T-26 |
精准营养 | 达成目标:基于营养目标出方案;边界:目标非法拦截 |
TC-T-27 |
家庭天盘 | 规划师 | P1 | 功能 | tests/test-cases/teacher.md#TC-T-27 |
家庭天盘 | 达成目标:给家庭看聚合视图并解读;边界:仅绑定家庭可见 |
TC-T-28 |
内容安全 | 规划师 | P1 | 功能 | tests/test-cases/teacher.md#TC-T-28 |
内容安全 | 达成目标:复核 AI 敏感内容;边界:命中即拦截 |
TC-T-29 |
数据导出(GDPR) | 规划师 | P1 | 功能 | tests/test-cases/teacher.md#TC-T-29 |
数据导出(GDPR) | 达成目标:导出客户数据;边界:授权/脱敏;越权拒 |
TC-T-01-E |
认证/双角色 | 规划师 | P2 | 异常 | tests/test-cases/teacher.md#TC-T-01-E |
AuthController`;规划师可切回家长 | 缺失/过期 token 统一 401 跳登录;非绑定家庭路由 403 被拒;模拟登录开关仅在测试环境可开 |
TC-T-02-E |
家庭绑定 | 规划师 | P2 | 异常 | tests/test-cases/teacher.md#TC-T-02-E |
FamilyInviteController | 错码/过期提示『邀请码无效或已失效』;重复绑定幂等不双建;注销家庭不可绑 |
TC-T-03-E |
健康报告 | 规划师 | P2 | 异常 | tests/test-cases/teacher.md#TC-T-03-E |
报告上传解析;规划师代传 | 损坏/非募极提示明确(非募极提示请确认募极生物);超大超限提示;解析超时进草稿非500;非绑定孩子 403 |
TC-T-04-E |
报告审核 | 规划师 | P2 | 异常 | tests/test-cases/teacher.md#TC-T-04-E |
报告审核 | 已删草稿提示『不存在』;解析中确认提示稍候;非绑定家庭草稿 403 不可操作 |
TC-T-05-E |
方案管理 | 规划师 | P2 | 异常 | tests/test-cases/teacher.md#TC-T-05-E |
方案管理;黑盒回归项 | 列表超时降级提示非500;黑盒回归:函数不再未定义、不白屏;空列表正常占位 |
TC-T-06-E |
方案审核 | 规划师 | P2 | 异常 | tests/test-cases/teacher.md#TC-T-06-E |
方案状态机 | 非 generated 态批准拦截(状态机守卫);并发双批准幂等仅 1 次状态跃迁 |
TC-T-07-E |
方案激活 | 规划师 | P2 | 异常 | tests/test-cases/teacher.md#TC-T-07-E |
激活拆任务 | 超时回滚不残半任务、状态回 reviewed;已激活再激活幂等不重复生成任务;非 reviewed 激活拦截 |
TC-T-08-E |
方案激活·幂等 | 规划师 | P2 | 异常 | tests/test-cases/teacher.md#TC-T-08-E |
幂等约束(黑盒回归) | 第二次幂等返回现状、不重复生成引导/模板任务;任务数与首次一致 |
TC-T-09-E |
任务审核 | 规划师 | P2 | 异常 | tests/test-cases/teacher.md#TC-T-09-E |
TaskController | 非绑定家庭 403;并发双审幂等仅计 1 次积分;超期任务审核被拒 |
TC-T-10-E |
测评录入 | 规划师 | P2 | 异常 | tests/test-cases/teacher.md#TC-T-10-E |
AssessmentAppointmentController/DanAssessmentController |
必填缺失 400 不生成半成品;重复录入覆盖非新增;越界 400 不写脏分;非指派 confirm 返回『您不是被指派测评师』 |
TC-T-11-E |
成长计划 | 规划师 | P2 | 异常 | tests/test-cases/teacher.md#TC-T-11-E |
GrowthPlanController`;黑盒回归 | 超时降级非500;空列表正常;非绑定家庭 403 |
TC-T-12-E |
套餐 | 规划师 | P2 | 异常 | tests/test-cases/teacher.md#TC-T-12-E |
GuidePackageController | 空任务项拦截上架;审核超时回退草稿非500;重复提交幂等 |
TC-T-13-E |
数据隔离 | 规划师 | P2 | 异常 | tests/test-cases/teacher.md#TC-T-13-E |
控制器内 role 检查 | 非绑定家庭统一 403;不泄露他人数据;并发越权同样 403 |
TC-T-14-E |
方案编辑 | 规划师 | P2 | 异常 | tests/test-cases/teacher.md#TC-T-14-E |
方案管理 | 归档方案编辑拦截;非绑定家庭 403;超长 400 |
TC-T-15-E |
套餐任务 | 规划师 | P2 | 异常 | tests/test-cases/teacher.md#TC-T-15-E |
GuidePackageController | 重算超时降级提示非500;空套餐拦截;并发增删各自生效不丢项 |
TC-T-16-E |
健康总览 | 规划师 | P2 | 异常 | tests/test-cases/teacher.md#TC-T-16-E |
仪表板 | 缺失项降级展示不白屏;超时降级提示非500;仅绑定家庭数据 |
TC-T-17-E |
计划进度 | 规划师 | P2 | 异常 | tests/test-cases/teacher.md#TC-T-17-E |
GrowthPlanController | 超时降级非500;进度按任务状态实时计算、一致 |
TC-T-18-E |
批量任务 | 规划师 | P2 | 异常 | tests/test-cases/teacher.md#TC-T-18-E |
TaskController | 部分失败不影响其他成员独立落库;并发批量各自独立不串 |
TC-T-19-E |
消息推送 | 规划师 | P2 | 异常 | tests/test-cases/teacher.md#TC-T-19-E |
消息服务 | 已注销客户跳过不报错;内容转义不执行脚本;免打扰不推送 |
TC-T-20-E |
退出/切换 | 规划师 | P2 | 异常 | tests/test-cases/teacher.md#TC-T-20-E |
AuthController | 旧 token 失效 401;网络中断退出清缓存、下次需重登;切回家长正常 |
TC-T-21-E |
报告对比 | 规划师 | P2 | 异常 | tests/test-cases/teacher.md#TC-T-21-E |
报告管理 | 类型不一致提示不可比;不存在 id 404;差异清晰标注 |
TC-T-22-E |
方案归档 | 规划师 | P3 | 异常 | tests/test-cases/teacher.md#TC-T-22-E |
方案管理 | 归档后编辑/激活拦截;不存在 404 |
TC-T-23-E |
报告代传/report-proxy | 规划师 | P2 | 异常 | tests/test-cases/teacher.md#TC-T-23-E |
报告代传/report-proxy | 非绑定家庭 403 拒;损坏/非募极提示明确;识别失败进草稿非500 |
TC-T-24-E |
规划师绑定 | 规划师 | P2 | 异常 | tests/test-cases/teacher.md#TC-T-24-E |
规划师绑定 | 在途未完成提示先处理;非平台家庭绑定 400 拒 |
TC-T-25-E |
舌诊情绪识别 | 规划师 | P2 | 异常 | tests/test-cases/teacher.md#TC-T-25-E |
舌诊情绪识别 | 类型校验拒绝(.php/.html)不执行;非照片/模糊拒;低置信度提示重拍 |
TC-T-26-E |
精准营养 | 规划师 | P2 | 异常 | tests/test-cases/teacher.md#TC-T-26-E |
精准营养 | 负/超上限 400『热量需在合理区间』;脚本转义存储不执行 |
TC-T-27-E |
家庭天盘 | 规划师 | P2 | 异常 | tests/test-cases/teacher.md#TC-T-27-E |
家庭天盘 | 非绑定家庭 403;缺失项降级展示不白屏 |
TC-T-28-E |
内容安全 | 规划师 | P2 | 异常 | tests/test-cases/teacher.md#TC-T-28-E |
内容安全 | 命中即拦截不放行;超时 Fallback 兜底、友好提示非500 |
TC-T-29-E |
数据导出(GDPR) | 规划师 | P2 | 异常 | tests/test-cases/teacher.md#TC-T-29-E |
数据导出(GDPR) | 越权导出 403;频次限制提示『导出过于频繁』;敏感字段脱敏 |
TC-T-01-P |
认证/双角色 | 规划师 | P1 | 权限 | tests/test-cases/teacher.md#TC-T-01-P |
AuthController`;规划师可切回家长 | 非绑定家庭数据统一 403;confirm/cancel 增加归属校验,非指派调用被拒(高危越权修复) |
TC-T-02-P |
家庭绑定 | 规划师 | P1 | 权限 | tests/test-cases/teacher.md#TC-T-02-P |
FamilyInviteController | 非绑定家庭数据统一 403;confirm/cancel 增加归属校验,非指派调用被拒(高危越权修复) |
TC-T-03-P |
健康报告 | 规划师 | P1 | 权限 | tests/test-cases/teacher.md#TC-T-03-P |
报告上传解析;规划师代传 | 非绑定家庭数据统一 403;confirm/cancel 增加归属校验,非指派调用被拒(高危越权修复) |
TC-T-04-P |
报告审核 | 规划师 | P1 | 权限 | tests/test-cases/teacher.md#TC-T-04-P |
报告审核 | 非绑定家庭数据统一 403;confirm/cancel 增加归属校验,非指派调用被拒(高危越权修复) |
TC-T-05-P |
方案管理 | 规划师 | P1 | 权限 | tests/test-cases/teacher.md#TC-T-05-P |
方案管理;黑盒回归项 | 非绑定家庭数据统一 403;confirm/cancel 增加归属校验,非指派调用被拒(高危越权修复) |
TC-T-06-P |
方案审核 | 规划师 | P1 | 权限 | tests/test-cases/teacher.md#TC-T-06-P |
方案状态机 | 非绑定家庭数据统一 403;confirm/cancel 增加归属校验,非指派调用被拒(高危越权修复) |
TC-T-07-P |
方案激活 | 规划师 | P1 | 权限 | tests/test-cases/teacher.md#TC-T-07-P |
激活拆任务 | 非绑定家庭数据统一 403;confirm/cancel 增加归属校验,非指派调用被拒(高危越权修复) |
TC-T-08-P |
方案激活·幂等 | 规划师 | P1 | 权限 | tests/test-cases/teacher.md#TC-T-08-P |
幂等约束(黑盒回归) | 非绑定家庭数据统一 403;confirm/cancel 增加归属校验,非指派调用被拒(高危越权修复) |
TC-T-09-P |
任务审核 | 规划师 | P1 | 权限 | tests/test-cases/teacher.md#TC-T-09-P |
TaskController | 非绑定家庭数据统一 403;confirm/cancel 增加归属校验,非指派调用被拒(高危越权修复) |
TC-T-10-P |
测评录入 | 规划师 | P1 | 权限 | tests/test-cases/teacher.md#TC-T-10-P |
AssessmentAppointmentController/DanAssessmentController |
非绑定家庭数据统一 403;confirm/cancel 增加归属校验,非指派调用被拒(高危越权修复) |
TC-T-11-P |
成长计划 | 规划师 | P1 | 权限 | tests/test-cases/teacher.md#TC-T-11-P |
GrowthPlanController`;黑盒回归 | 非绑定家庭数据统一 403;confirm/cancel 增加归属校验,非指派调用被拒(高危越权修复) |
TC-T-12-P |
套餐 | 规划师 | P1 | 权限 | tests/test-cases/teacher.md#TC-T-12-P |
GuidePackageController | 非绑定家庭数据统一 403;confirm/cancel 增加归属校验,非指派调用被拒(高危越权修复) |
TC-T-13-P |
数据隔离 | 规划师 | P1 | 权限 | tests/test-cases/teacher.md#TC-T-13-P |
控制器内 role 检查 | 非绑定家庭数据统一 403;confirm/cancel 增加归属校验,非指派调用被拒(高危越权修复) |
TC-T-14-P |
方案编辑 | 规划师 | P1 | 权限 | tests/test-cases/teacher.md#TC-T-14-P |
方案管理 | 非绑定家庭数据统一 403;confirm/cancel 增加归属校验,非指派调用被拒(高危越权修复) |
TC-T-15-P |
套餐任务 | 规划师 | P1 | 权限 | tests/test-cases/teacher.md#TC-T-15-P |
GuidePackageController | 非绑定家庭数据统一 403;confirm/cancel 增加归属校验,非指派调用被拒(高危越权修复) |
TC-T-16-P |
健康总览 | 规划师 | P1 | 权限 | tests/test-cases/teacher.md#TC-T-16-P |
仪表板 | 非绑定家庭数据统一 403;confirm/cancel 增加归属校验,非指派调用被拒(高危越权修复) |
TC-T-17-P |
计划进度 | 规划师 | P1 | 权限 | tests/test-cases/teacher.md#TC-T-17-P |
GrowthPlanController | 非绑定家庭数据统一 403;confirm/cancel 增加归属校验,非指派调用被拒(高危越权修复) |
TC-T-18-P |
批量任务 | 规划师 | P1 | 权限 | tests/test-cases/teacher.md#TC-T-18-P |
TaskController | 非绑定家庭数据统一 403;confirm/cancel 增加归属校验,非指派调用被拒(高危越权修复) |
TC-T-19-P |
消息推送 | 规划师 | P1 | 权限 | tests/test-cases/teacher.md#TC-T-19-P |
消息服务 | 非绑定家庭数据统一 403;confirm/cancel 增加归属校验,非指派调用被拒(高危越权修复) |
TC-T-20-P |
退出/切换 | 规划师 | P1 | 权限 | tests/test-cases/teacher.md#TC-T-20-P |
AuthController | 非绑定家庭数据统一 403;confirm/cancel 增加归属校验,非指派调用被拒(高危越权修复) |
TC-T-21-P |
报告对比 | 规划师 | P1 | 权限 | tests/test-cases/teacher.md#TC-T-21-P |
报告管理 | 非绑定家庭数据统一 403;confirm/cancel 增加归属校验,非指派调用被拒(高危越权修复) |
TC-T-22-P |
方案归档 | 规划师 | P2 | 权限 | tests/test-cases/teacher.md#TC-T-22-P |
方案管理 | 非绑定家庭数据统一 403;confirm/cancel 增加归属校验,非指派调用被拒(高危越权修复) |
TC-T-23-P |
报告代传/report-proxy | 规划师 | P1 | 权限 | tests/test-cases/teacher.md#TC-T-23-P |
报告代传/report-proxy | 非绑定家庭数据统一 403;confirm/cancel 增加归属校验,非指派调用被拒 |
TC-T-24-P |
规划师绑定 | 规划师 | P1 | 权限 | tests/test-cases/teacher.md#TC-T-24-P |
规划师绑定 | 非绑定家庭数据统一 403;confirm/cancel 增加归属校验,非指派调用被拒 |
TC-T-25-P |
舌诊情绪识别 | 规划师 | P1 | 权限 | tests/test-cases/teacher.md#TC-T-25-P |
舌诊情绪识别 | 非绑定家庭数据统一 403;confirm/cancel 增加归属校验,非指派调用被拒 |
TC-T-26-P |
精准营养 | 规划师 | P1 | 权限 | tests/test-cases/teacher.md#TC-T-26-P |
精准营养 | 非绑定家庭数据统一 403;confirm/cancel 增加归属校验,非指派调用被拒 |
TC-T-27-P |
家庭天盘 | 规划师 | P1 | 权限 | tests/test-cases/teacher.md#TC-T-27-P |
家庭天盘 | 非绑定家庭数据统一 403;confirm/cancel 增加归属校验,非指派调用被拒 |
TC-T-28-P |
内容安全 | 规划师 | P1 | 权限 | tests/test-cases/teacher.md#TC-T-28-P |
内容安全 | 非绑定家庭数据统一 403;confirm/cancel 增加归属校验,非指派调用被拒 |
TC-T-29-P |
数据导出(GDPR) | 规划师 | P1 | 权限 | tests/test-cases/teacher.md#TC-T-29-P |
数据导出(GDPR) | 非绑定家庭数据统一 403;confirm/cancel 增加归属校验,非指派调用被拒 |
TC-T-30 |
测评/五维 | 规划师 | P1 | 功能 | tests/test-cases/teacher.md#TC-T-30 |
AssessmentAppointmentService | 八类分→五维刷新;生成 generated 方案;概览/沙盘刷新 |
TC-T-31 |
维度/手动 | 规划师 | P1 | 功能 | tests/test-cases/teacher.md#TC-T-31 |
ManualDimensionScoreController | 目标维度覆盖/调整并留痕;概览/沙盘随新值刷新 |
TC-T-32 |
五维/自评 | 规划师 | P2 | 功能 | tests/test-cases/teacher.md#TC-T-32 |
FiveDimensionSelfCheckController | 自评微调并叠加;FiveDimensionSelfCheck 留记录;历史可查 |
TC-T-30-E |
测评/五维 | 规划师 | P1 | 异常 | tests/test-cases/teacher.md#TC-T-30-E |
AssessmentAppointmentService | 1. 400 不生成半成品 2. 覆盖非新增、无重复记录 3. 越界 400 不写脏分 |
TC-T-31-E |
维度/手动 | 规划师 | P2 | 异常 | tests/test-cases/teacher.md#TC-T-31-E |
ManualDimensionScoreController | 1. 400 拦截 2. 幂等无重复痕迹;不影响其他维度(断言) |
TC-T-32-E |
五维/自评 | 规划师 | P3 | 异常 | tests/test-cases/teacher.md#TC-T-32-E |
FiveDimensionSelfCheckController | 400 拦截;不写脏分 |
TC-T-30-P |
测评/五维 | 规划师 | P1 | 权限 | tests/test-cases/teacher.md#TC-T-30-P |
AssessmentAppointmentService | 非绑定家庭录入 403 |
TC-T-31-P |
维度/手动 | 规划师 | P1 | 权限 | tests/test-cases/teacher.md#TC-T-31-P |
ManualDimensionScoreController | 非绑定家庭 403 |
TC-T-32-P |
五维/自评 | 规划师 | P1 | 权限 | tests/test-cases/teacher.md#TC-T-32-P |
FiveDimensionSelfCheckController | 非绑定家庭 403 |
TC-T-N01 |
健康报告 | 规划师 | P1 | 性能 | tests/test-cases/teacher.md#TC-T-N01 |
报告解析中台 | 队列不堵;单份 ≤ 30s;失败重试不重复入库 |
TC-T-N02 |
方案审核 | 规划师 | P1 | 性能 | tests/test-cases/teacher.md#TC-T-N02 |
方案状态机 | 列表 ≤ 2s;筛选/排序生效 |
TC-T-N03 |
绑定家庭 | 规划师 | P2 | 性能 | tests/test-cases/teacher.md#TC-T-N03 |
绑定家庭 | 切换 ≤ 1.5s;数据隔离不串 |
TC-T-N04 |
报告代传 | 规划师 | P1 | 兼容 | tests/test-cases/teacher.md#TC-T-N04 |
代传入口 | 上传入口一致;解析预览正常 |
TC-T-N05 |
健康报告 | 规划师 | P0 | 安全 | tests/test-cases/teacher.md#TC-T-N05 |
规划师鉴权 | 返回 403(非绑定家庭越权拦截);不泄露 |
TC-T-N06 |
方案审核 | 规划师 | P0 | 安全 | tests/test-cases/teacher.md#TC-T-N06 |
方案鉴权 | 服务端归属校验;非法操作 403/拒绝 |
TC-T-N07 |
舌诊录入 | 规划师 | P1 | 安全 | tests/test-cases/teacher.md#TC-T-N07 |
上传校验 | 类型校验拒绝;不执行;存储路径随机化防遍历 |
TC-T-N08 |
精准营养 | 规划师 | P1 | 安全 | tests/test-cases/teacher.md#TC-T-N08 |
方案内容安全 | 后端转义存储;前端不执行 |
TC-S-01 |
入驻 | 服务商 | P1 | 功能 | tests/test-cases/vendor.md#TC-S-01 |
ServiceRoleApplicationController/AdminEcomSupplierController |
进入运营审核队列;审核通过→获得供应商身份;资质缺失→驳回说明;重复申请幂等 |
TC-S-02 |
商品 | 服务商 | P0 | 接口 | tests/test-cases/vendor.md#TC-S-02 |
ProductController/AdminProductController |
商品在商城可见;库存/价格即时生效;字段校验错误→400;负价格/负库存拦截;下架不可购买 |
TC-S-03 |
订单 | 服务商 | P0 | 功能 | tests/test-cases/vendor.md#TC-S-03 |
ProductOrderController | 订单状态正确流转;客户可见物流/核销码;重复发货幂等;核销码校验防冒用 |
TC-S-04 |
订单核销 | 服务商 | P0 | 功能 | tests/test-cases/vendor.md#TC-S-04 |
订单服务 | 重复核销幂等;超期订单提示不可核销 |
TC-S-05 |
库存 | 服务商 | P1 | 功能 | tests/test-cases/vendor.md#TC-S-05 |
库存服务 | 负库存拦截;同步后前台可见 |
TC-S-06 |
售后 | 服务商 | P1 | 功能 | tests/test-cases/vendor.md#TC-S-06 |
售后 | 重复退款拦截;退款流水可追溯 |
TC-S-07 |
活动报名 | 服务商 | P2 | 功能 | tests/test-cases/vendor.md#TC-S-07 |
活动管理 | 活动失效不可报;报名后商品出现活动标 |
TC-S-08 |
对账 | 服务商 | P1 | 功能 | tests/test-cases/vendor.md#TC-S-08 |
结算 | 账期计算正确;结算后状态更新 |
TC-S-09 |
服务商集成/解析中台 | 服务商 | P1 | 功能 | tests/test-cases/vendor.md#TC-S-09 |
服务商集成/解析中台 | 达成目标:提供解析能力;边界:跨商户隔离;鉴权 |
TC-S-10 |
食谱库 | 服务商 | P1 | 功能 | tests/test-cases/vendor.md#TC-S-10 |
食谱库 | 达成目标:供食谱数据;边界:数据合规;格式校验 |
TC-S-11 |
合规 | 服务商 | P1 | 功能 | tests/test-cases/vendor.md#TC-S-11 |
合规 | 达成目标:授权内用数;边界:越授权拒;脱敏 |
TC-S-01-E |
入驻 | 服务商 | P2 | 异常 | tests/test-cases/vendor.md#TC-S-01-E |
ServiceRoleApplicationController/AdminEcomSupplierController |
资质缺失驳回并说明缺项;重复申请幂等不双建;非法联系方式 400 |
TC-S-02-E |
商品 | 服务商 | P2 | 异常 | tests/test-cases/vendor.md#TC-S-02-E |
ProductController/AdminProductController |
负价格/负库存/非法分类统一 400;并发改库存乐观锁不互相覆盖;下架后不可购买 |
TC-S-03-E |
订单 | 服务商 | P2 | 异常 | tests/test-cases/vendor.md#TC-S-03-E |
ProductOrderController | 支付失败订单回滚不进已发货;重复发货幂等仅 1 次;核销码校验失败拒(防冒用) |
TC-S-04-E |
订单核销 | 服务商 | P2 | 异常 | tests/test-cases/vendor.md#TC-S-04-E |
订单服务 | 重复核销幂等;超期提示不可核销;非本服务商 403 |
TC-S-05-E |
库存 | 服务商 | P2 | 异常 | tests/test-cases/vendor.md#TC-S-05-E |
库存服务 | 负库存 400 拦截;并发超卖保护不出现负库存;同步失败重试前台一致 |
TC-S-06-E |
售后 | 服务商 | P2 | 异常 | tests/test-cases/vendor.md#TC-S-06-E |
售后 | 重复退款拦截仅 1 次;超金额 400;非本服务商 403;流水可追溯 |
TC-S-07-E |
活动报名 | 服务商 | P3 | 异常 | tests/test-cases/vendor.md#TC-S-07-E |
活动管理 | 失效活动报名拒;重复报名幂等;非法参数 400 |
TC-S-08-E |
对账 | 服务商 | P2 | 异常 | tests/test-cases/vendor.md#TC-S-08-E |
结算 | 未到账期结算拒;重复结算幂等;异常金额告警不入账 |
TC-S-09-E |
服务商集成/解析中台 | 服务商 | P2 | 异常 | tests/test-cases/vendor.md#TC-S-09-E |
服务商集成/解析中台 | 跨商户隔离 403;损坏/超大文件明确提示非500;鉴权失效 401 |
TC-S-10-E |
食谱库 | 服务商 | P2 | 异常 | tests/test-cases/vendor.md#TC-S-10-E |
食谱库 | 格式校验 400;XSS 转义存储不执行;非本商户 403 |
TC-S-11-E |
合规 | 服务商 | P2 | 异常 | tests/test-cases/vendor.md#TC-S-11-E |
合规 | 越授权 403 拒;敏感字段强制脱敏;并发越权同样 403 |
TC-S-01-P |
入驻 | 服务商 | P1 | 权限 | tests/test-cases/vendor.md#TC-S-01-P |
ServiceRoleApplicationController/AdminEcomSupplierController |
非本服务商资源操作被拒;核销码校验防冒用;跨商户数据隔离 |
TC-S-02-P |
商品 | 服务商 | P1 | 权限 | tests/test-cases/vendor.md#TC-S-02-P |
ProductController/AdminProductController |
非本服务商资源操作被拒;核销码校验防冒用;跨商户数据隔离 |
TC-S-03-P |
订单 | 服务商 | P1 | 权限 | tests/test-cases/vendor.md#TC-S-03-P |
ProductOrderController | 非本服务商资源操作被拒;核销码校验防冒用;跨商户数据隔离 |
TC-S-04-P |
订单核销 | 服务商 | P1 | 权限 | tests/test-cases/vendor.md#TC-S-04-P |
订单服务 | 非本服务商资源操作被拒;核销码校验防冒用;跨商户数据隔离 |
TC-S-05-P |
库存 | 服务商 | P1 | 权限 | tests/test-cases/vendor.md#TC-S-05-P |
库存服务 | 非本服务商资源操作被拒;核销码校验防冒用;跨商户数据隔离 |
TC-S-06-P |
售后 | 服务商 | P1 | 权限 | tests/test-cases/vendor.md#TC-S-06-P |
售后 | 非本服务商资源操作被拒;核销码校验防冒用;跨商户数据隔离 |
TC-S-07-P |
活动报名 | 服务商 | P2 | 权限 | tests/test-cases/vendor.md#TC-S-07-P |
活动管理 | 非本服务商资源操作被拒;核销码校验防冒用;跨商户数据隔离 |
TC-S-08-P |
对账 | 服务商 | P1 | 权限 | tests/test-cases/vendor.md#TC-S-08-P |
结算 | 非本服务商资源操作被拒;核销码校验防冒用;跨商户数据隔离 |
TC-S-09-P |
服务商集成/解析中台 | 服务商 | P1 | 权限 | tests/test-cases/vendor.md#TC-S-09-P |
服务商集成/解析中台 | 非本商户资源隔离,跨商户访问 403 |
TC-S-10-P |
食谱库 | 服务商 | P1 | 权限 | tests/test-cases/vendor.md#TC-S-10-P |
食谱库 | 非本商户资源隔离,跨商户访问 403 |
TC-S-11-P |
合规 | 服务商 | P1 | 权限 | tests/test-cases/vendor.md#TC-S-11-P |
合规 | 非本商户资源隔离,跨商户访问 403 |
TC-S-N01 |
商品 | 服务商 | P2 | 性能 | tests/test-cases/vendor.md#TC-S-N01 |
商品管理 | 列表 ≤ 2s;筛选生效 |
TC-S-N02 |
订单履约 | 服务商 | P1 | 性能 | tests/test-cases/vendor.md#TC-S-N02 |
订单服务 | 查询 ≤ 2s;状态流转即时 |
TC-S-N03 |
入驻 | 服务商 | P2 | 兼容 | tests/test-cases/vendor.md#TC-S-N03 |
服务商后台 | 表单布局正常;上传兼容 |
TC-S-N04 |
订单履约 | 服务商 | P0 | 安全 | tests/test-cases/vendor.md#TC-S-N04 |
商户隔离 | 返回 403(跨商户隔离);不泄露他商数据 |
TC-S-N05 |
报告解析接入 | 服务商 | P0 | 安全 | tests/test-cases/vendor.md#TC-S-N05 |
上传校验 | 类型/大小校验;不执行;存储隔离 |
TC-S-N06 |
营养食谱 | 服务商 | P1 | 安全 | tests/test-cases/vendor.md#TC-S-N06 |
内容安全 | 内容转义存储/渲染;不执行 |
tests/**/*.spec.js)来源锚点 =
文件#用例标题。用例标题列于 JSON(inventory.json)便于回写。
| 文件 | 用例数 | 来源 |
|---|---|---|
tests/e2e-live/admin-live.spec.js |
5 | tests/e2e-live/admin-live.spec.js |
tests/e2e-live/frontend-live.spec.js |
6 | tests/e2e-live/frontend-live.spec.js |
tests/e2e-live/health-contract.spec.js |
0 | tests/e2e-live/health-contract.spec.js |
tests/e2e-live/shop-sort-api.spec.js |
4 | tests/e2e-live/shop-sort-api.spec.js |
tests/e2e/_smoke_browser.spec.js |
2 | tests/e2e/_smoke_browser.spec.js |
tests/e2e/activity-registration.spec.js |
5 | tests/e2e/activity-registration.spec.js |
tests/e2e/admin-activity-review.spec.js |
2 | tests/e2e/admin-activity-review.spec.js |
tests/e2e/admin-butler-review.spec.js |
6 | tests/e2e/admin-butler-review.spec.js |
tests/e2e/admin-commission-config.spec.js |
4 | tests/e2e/admin-commission-config.spec.js |
tests/e2e/admin-ecom-supplier.spec.js |
3 | tests/e2e/admin-ecom-supplier.spec.js |
tests/e2e/admin-menu-survey.spec.js |
2 | tests/e2e/admin-menu-survey.spec.js |
tests/e2e/admin-panel.spec.js |
4 | tests/e2e/admin-panel.spec.js |
tests/e2e/admin-promotion-config.spec.js |
2 | tests/e2e/admin-promotion-config.spec.js |
tests/e2e/ai-plan-task-flow.spec.js |
7 | tests/e2e/ai-plan-task-flow.spec.js |
tests/e2e/api/activity-ranking-sc-p77-p86.spec.js |
5 | tests/e2e/api/activity-ranking-sc-p77-p86.spec.js |
tests/e2e/api/api-smoke.spec.js |
4 | tests/e2e/api/api-smoke.spec.js |
tests/e2e/api/article-api.spec.js |
7 | tests/e2e/api/article-api.spec.js |
tests/e2e/api/badge-sc-c09-c10-a05.spec.js |
8 | tests/e2e/api/badge-sc-c09-c10-a05.spec.js |
tests/e2e/api/butler-fallback.spec.js |
4 | tests/e2e/api/butler-fallback.spec.js |
tests/e2e/api/coach-food-sc-b07.spec.js |
5 | tests/e2e/api/coach-food-sc-b07.spec.js |
tests/e2e/api/contact-api.spec.js |
6 | tests/e2e/api/contact-api.spec.js |
tests/e2e/api/dimension-energy-contract.spec.js |
14 | tests/e2e/api/dimension-energy-contract.spec.js |
tests/e2e/api/energy-api.spec.js |
8 | tests/e2e/api/energy-api.spec.js |
tests/e2e/api/energy-sc-p87-p88-c24.spec.js |
6 | tests/e2e/api/energy-sc-p87-p88-c24.spec.js |
tests/e2e/api/family-member-api.spec.js |
14 | tests/e2e/api/family-member-api.spec.js |
tests/e2e/api/generated/tc-scripted.spec.js |
0 | tests/e2e/api/generated/tc-scripted.spec.js |
tests/e2e/api/guide-review-sc-t06-t18.spec.js |
5 | tests/e2e/api/guide-review-sc-t06-t18.spec.js |
tests/e2e/api/human-butler-workorder.spec.js |
4 | tests/e2e/api/human-butler-workorder.spec.js |
tests/e2e/api/incentive-loop-sc-x05.spec.js |
3 | tests/e2e/api/incentive-loop-sc-x05.spec.js |
tests/e2e/api/mall-exchange-sc-c22.spec.js |
4 | tests/e2e/api/mall-exchange-sc-c22.spec.js |
tests/e2e/api/nonfunc-perf-compat.spec.js |
5 | tests/e2e/api/nonfunc-perf-compat.spec.js |
tests/e2e/api/nonfunc-security.spec.js |
11 | tests/e2e/api/nonfunc-security.spec.js |
tests/e2e/api/report-closedloop-contract.spec.js |
25 | tests/e2e/api/report-closedloop-contract.spec.js |
tests/e2e/api/sc-p-03-switch-role.spec.js |
11 | tests/e2e/api/sc-p-03-switch-role.spec.js |
tests/e2e/api/task-c14-reject-recycle.spec.js |
8 | tests/e2e/api/task-c14-reject-recycle.spec.js |
tests/e2e/api/task-checkin-sc-c05.spec.js |
4 | tests/e2e/api/task-checkin-sc-c05.spec.js |
tests/e2e/api/task-create-scp10.spec.js |
10 | tests/e2e/api/task-create-scp10.spec.js |
tests/e2e/api/task-frequency-sc-p12.spec.js |
5 | tests/e2e/api/task-frequency-sc-p12.spec.js |
tests/e2e/api/wechat-login.spec.js |
5 | tests/e2e/api/wechat-login.spec.js |
tests/e2e/api/wish-flow-sc-p13-p14-c04.spec.js |
11 | tests/e2e/api/wish-flow-sc-p13-p14-c04.spec.js |
tests/e2e/article-management.spec.js |
5 | tests/e2e/article-management.spec.js |
tests/e2e/assessment-appointment-functional.spec.js |
7 | tests/e2e/assessment-appointment-functional.spec.js |
tests/e2e/assessment-appointment.spec.js |
6 | tests/e2e/assessment-appointment.spec.js |
tests/e2e/assessment-order-flow.spec.js |
5 | tests/e2e/assessment-order-flow.spec.js |
tests/e2e/ci-smoke.spec.js |
1 | tests/e2e/ci-smoke.spec.js |
tests/e2e/consignee-management.spec.js |
8 | tests/e2e/consignee-management.spec.js |
tests/e2e/contact-management.spec.js |
4 | tests/e2e/contact-management.spec.js |
tests/e2e/daily-checkin-streak.spec.js |
9 | tests/e2e/daily-checkin-streak.spec.js |
tests/e2e/dan-assessment-vendor-flow.spec.js |
10 | tests/e2e/dan-assessment-vendor-flow.spec.js |
tests/e2e/dan-report-flow.spec.js |
9 | tests/e2e/dan-report-flow.spec.js |
tests/e2e/debug-admin-spa.spec.js |
1 | tests/e2e/debug-admin-spa.spec.js |
tests/e2e/debug-control.spec.js |
1 | tests/e2e/debug-control.spec.js |
tests/e2e/debug-full-instrument.spec.js |
1 | tests/e2e/debug-full-instrument.spec.js |
tests/e2e/energy-rules-config.spec.js |
4 | tests/e2e/energy-rules-config.spec.js |
tests/e2e/energy-system.spec.js |
8 | tests/e2e/energy-system.spec.js |
tests/e2e/family-earnings-flow.spec.js |
6 | tests/e2e/family-earnings-flow.spec.js |
tests/e2e/family-member-management.spec.js |
10 | tests/e2e/family-member-management.spec.js |
tests/e2e/flora-microbiome-flow.spec.js |
9 | tests/e2e/flora-microbiome-flow.spec.js |
tests/e2e/growth-record-sync.spec.js |
8 | tests/e2e/growth-record-sync.spec.js |
tests/e2e/guide-family-list.spec.js |
7 | tests/e2e/guide-family-list.spec.js |
tests/e2e/health-knowledge-base.spec.js |
4 | tests/e2e/health-knowledge-base.spec.js |
tests/e2e/health-report-audit.spec.js |
8 | tests/e2e/health-report-audit.spec.js |
tests/e2e/mass-create-users.spec.js |
1 | tests/e2e/mass-create-users.spec.js |
tests/e2e/membership-system.spec.js |
3 | tests/e2e/membership-system.spec.js |
tests/e2e/mini-games-full.spec.js |
5 | tests/e2e/mini-games-full.spec.js |
tests/e2e/mini-games-playwright.spec.js |
12 | tests/e2e/mini-games-playwright.spec.js |
tests/e2e/mini-games.spec.js |
14 | tests/e2e/mini-games.spec.js |
tests/e2e/nutritionist-apply.spec.js |
3 | tests/e2e/nutritionist-apply.spec.js |
tests/e2e/nutritionist-flow.spec.js |
10 | tests/e2e/nutritionist-flow.spec.js |
tests/e2e/planner-bind-invite.spec.js |
9 | tests/e2e/planner-bind-invite.spec.js |
tests/e2e/points-system.spec.js |
4 | tests/e2e/points-system.spec.js |
tests/e2e/product-purchase.spec.js |
9 | tests/e2e/product-purchase.spec.js |
tests/e2e/publish-dimension-articles.spec.js |
1 | tests/e2e/publish-dimension-articles.spec.js |
tests/e2e/roles/admin/article/workflow.spec.js |
4 | tests/e2e/roles/admin/article/workflow.spec.js |
tests/e2e/roles/admin/login.spec.js |
2 | tests/e2e/roles/admin/login.spec.js |
tests/e2e/roles/admin/vendor/management.spec.js |
2 | tests/e2e/roles/admin/vendor/management.spec.js |
tests/e2e/roles/child/daily-checkin.spec.js |
3 | tests/e2e/roles/child/daily-checkin.spec.js |
tests/e2e/roles/child/login.spec.js |
2 | tests/e2e/roles/child/login.spec.js |
tests/e2e/roles/child/mini-games.spec.js |
3 | tests/e2e/roles/child/mini-games.spec.js |
tests/e2e/roles/parent/assessment-order.spec.js |
6 | tests/e2e/roles/parent/assessment-order.spec.js |
tests/e2e/roles/parent/energy-dashboard.spec.js |
5 | tests/e2e/roles/parent/energy-dashboard.spec.js |
tests/e2e/roles/parent/family-management.spec.js |
8 | tests/e2e/roles/parent/family-management.spec.js |
tests/e2e/roles/parent/points.spec.js |
6 | tests/e2e/roles/parent/points.spec.js |
tests/e2e/roles/parent/wish-management.spec.js |
5 | tests/e2e/roles/parent/wish-management.spec.js |
tests/e2e/roles/teacher/family-binding.spec.js |
4 | tests/e2e/roles/teacher/family-binding.spec.js |
tests/e2e/roles/teacher/login.spec.js |
2 | tests/e2e/roles/teacher/login.spec.js |
tests/e2e/teacher-dashboard.spec.js |
10 | tests/e2e/teacher-dashboard.spec.js |
tests/e2e/unified-audit-center.spec.js |
8 | tests/e2e/unified-audit-center.spec.js |
tests/e2e/vendor-onboarding.spec.js |
3 | tests/e2e/vendor-onboarding.spec.js |
tests/e2e/vendor-product-manage.spec.js |
8 | tests/e2e/vendor-product-manage.spec.js |
tests/e2e/wish-exchange-flow.spec.js |
12 | tests/e2e/wish-exchange-flow.spec.js |
tests/integration/mini-games-api.spec.js |
13 | tests/integration/mini-games-api.spec.js |
tests/integration/plan-chain.spec.js |
10 | tests/integration/plan-chain.spec.js |
tests/unit/games/1a2b.spec.js |
1 | tests/unit/games/1a2b.spec.js |
cfc-langgraph/tests · tools/xaf_agent_hub/tests)| 文件 | 用例数 | 来源 |
|---|---|---|
cfc-langgraph/tests/qna/test_graph.py |
4 | cfc-langgraph/tests/qna/test_graph.py |
cfc-langgraph/tests/test_analyze.py |
2 | cfc-langgraph/tests/test_analyze.py |
cfc-langgraph/tests/test_auto_tag.py |
5 | cfc-langgraph/tests/test_auto_tag.py |
cfc-langgraph/tests/test_chat.py |
1 | cfc-langgraph/tests/test_chat.py |
cfc-langgraph/tests/test_graph.py |
5 | cfc-langgraph/tests/test_graph.py |
cfc-langgraph/tests/test_health_plan.py |
13 | cfc-langgraph/tests/test_health_plan.py |
cfc-langgraph/tests/test_intent.py |
5 | cfc-langgraph/tests/test_intent.py |
cfc-langgraph/tests/test_memory.py |
3 | cfc-langgraph/tests/test_memory.py |
cfc-langgraph/tests/test_recommend.py |
3 | cfc-langgraph/tests/test_recommend.py |
cfc-langgraph/tests/test_report_parse.py |
5 | cfc-langgraph/tests/test_report_parse.py |
cfc-langgraph/tests/test_tongue.py |
1 | cfc-langgraph/tests/test_tongue.py |
tools/xaf_agent_hub/tests/test_smart_cleanup.py |
8 | tools/xaf_agent_hub/tests/test_smart_cleanup.py |
cfc-backend/src/test/java)方法级覆盖矩阵(控制器 handler 命中情况)见
discovery.md。此处文件级编目,来源锚点 = 原 java 路径。
| 测试文件 | 类型 | @Test数 | 目标类 | 来源 |
|---|---|---|---|---|
cfc-backend/src/test/java/com/etotem/cfc/common/AdminRolesTest.java |
cfc-backend | 9 | AdminRoles | cfc-backend/src/test/java/com/etotem/cfc/common/AdminRolesTest.java |
cfc-backend/src/test/java/com/etotem/cfc/common/ResultCodeFactoryTest.java |
cfc-backend | 11 | ResultCodeFactory | cfc-backend/src/test/java/com/etotem/cfc/common/ResultCodeFactoryTest.java |
cfc-backend/src/test/java/com/etotem/cfc/common/TestRoles.java |
cfc-backend | 0 | TestRoles.java | cfc-backend/src/test/java/com/etotem/cfc/common/TestRoles.java |
cfc-backend/src/test/java/com/etotem/cfc/config/AttributionStage1FoundationTest.java |
cfc-backend | 7 | AttributionStage1Foundation | cfc-backend/src/test/java/com/etotem/cfc/config/AttributionStage1FoundationTest.java |
cfc-backend/src/test/java/com/etotem/cfc/config/DatabaseInitializerSeedTest.java |
cfc-backend | 6 | DatabaseInitializerSeed | cfc-backend/src/test/java/com/etotem/cfc/config/DatabaseInitializerSeedTest.java |
cfc-backend/src/test/java/com/etotem/cfc/config/FamilyAccessInterceptorTest.java |
cfc-backend | 11 | FamilyAccessInterceptor | cfc-backend/src/test/java/com/etotem/cfc/config/FamilyAccessInterceptorTest.java |
cfc-backend/src/test/java/com/etotem/cfc/config/JwtInterceptorContractEdgeTest.java |
cfc-backend | 10 | JwtInterceptorContractEdge | cfc-backend/src/test/java/com/etotem/cfc/config/JwtInterceptorContractEdgeTest.java |
cfc-backend/src/test/java/com/etotem/cfc/config/JwtInterceptorLoginRequiredPathTest.java |
cfc-backend | 3 | JwtInterceptorLoginRequiredPath | cfc-backend/src/test/java/com/etotem/cfc/config/JwtInterceptorLoginRequiredPathTest.java |
cfc-backend/src/test/java/com/etotem/cfc/config/JwtInterceptorLoginRequiredTest.java |
cfc-backend | 5 | JwtInterceptorLoginRequired | cfc-backend/src/test/java/com/etotem/cfc/config/JwtInterceptorLoginRequiredTest.java |
cfc-backend/src/test/java/com/etotem/cfc/config/JwtInterceptorWechatLoginTest.java |
cfc-backend | 4 | JwtInterceptorWechatLogin | cfc-backend/src/test/java/com/etotem/cfc/config/JwtInterceptorWechatLoginTest.java |
cfc-backend/src/test/java/com/etotem/cfc/config/ScG06JwtGuardTest.java |
cfc-backend | 19 | ScG06JwtGuard | cfc-backend/src/test/java/com/etotem/cfc/config/ScG06JwtGuardTest.java |
cfc-backend/src/test/java/com/etotem/cfc/controller/AttributionControllerTest.java |
cfc-backend | 1 | AttributionController | cfc-backend/src/test/java/com/etotem/cfc/controller/AttributionControllerTest.java |
cfc-backend/src/test/java/com/etotem/cfc/controller/AttributionSurveyRoutingTest.java |
cfc-backend | 3 | AttributionSurveyRouting | cfc-backend/src/test/java/com/etotem/cfc/controller/AttributionSurveyRoutingTest.java |
cfc-backend/src/test/java/com/etotem/cfc/controller/AuthWechatLoginContractTest.java |
cfc-backend | 10 | AuthWechatLoginContract | cfc-backend/src/test/java/com/etotem/cfc/controller/AuthWechatLoginContractTest.java |
cfc-backend/src/test/java/com/etotem/cfc/controller/BadgeControllerGetMemberBadgesTest.java |
cfc-backend | 9 | BadgeControllerGetMemberBadges | cfc-backend/src/test/java/com/etotem/cfc/controller/BadgeControllerGetMemberBadgesTest.java |
cfc-backend/src/test/java/com/etotem/cfc/controller/DanAssessmentControllerGetActiveMaterialTest.java |
cfc-backend | 3 | DanAssessmentControllerGetActiveMaterial | cfc-backend/src/test/java/com/etotem/cfc/controller/DanAssessmentControllerGetActiveMaterialTest.java |
cfc-backend/src/test/java/com/etotem/cfc/controller/EnergyControllerGrantEnergyTest.java |
cfc-backend | 3 | EnergyControllerGrantEnergy | cfc-backend/src/test/java/com/etotem/cfc/controller/EnergyControllerGrantEnergyTest.java |
cfc-backend/src/test/java/com/etotem/cfc/controller/FamilyEarningsAdminRoleGateTest.java |
cfc-backend | 8 | FamilyEarningsAdminRoleGate | cfc-backend/src/test/java/com/etotem/cfc/controller/FamilyEarningsAdminRoleGateTest.java |
cfc-backend/src/test/java/com/etotem/cfc/controller/HealthCheckinCfEarnCallSiteTest.java |
cfc-backend | 6 | HealthCheckinCfEarnCallSite | cfc-backend/src/test/java/com/etotem/cfc/controller/HealthCheckinCfEarnCallSiteTest.java |
cfc-backend/src/test/java/com/etotem/cfc/controller/HealthDimensionControllerUploadContractTest.java |
cfc-backend | 21 | HealthDimensionControllerUploadContract | cfc-backend/src/test/java/com/etotem/cfc/controller/HealthDimensionControllerUploadContractTest.java |
cfc-backend/src/test/java/com/etotem/cfc/controller/HealthPlanDeleteControllerTest.java |
cfc-backend | 6 | HealthPlanDeleteController | cfc-backend/src/test/java/com/etotem/cfc/controller/HealthPlanDeleteControllerTest.java |
cfc-backend/src/test/java/com/etotem/cfc/controller/HealthReportControllerCreateReportTest.java |
cfc-backend | 5 | HealthReportControllerCreateReport | cfc-backend/src/test/java/com/etotem/cfc/controller/HealthReportControllerCreateReportTest.java |
cfc-backend/src/test/java/com/etotem/cfc/controller/HealthReportControllerListPaginationTest.java |
cfc-backend | 4 | HealthReportControllerListPagination | cfc-backend/src/test/java/com/etotem/cfc/controller/HealthReportControllerListPaginationTest.java |
cfc-backend/src/test/java/com/etotem/cfc/controller/HealthReportControllerProxyParseBindingTest.java |
cfc-backend | 6 | HealthReportControllerProxyParseBinding | cfc-backend/src/test/java/com/etotem/cfc/controller/HealthReportControllerProxyParseBindingTest.java |
cfc-backend/src/test/java/com/etotem/cfc/controller/HealthReportControllerUploadTest.java |
cfc-backend | 16 | HealthReportControllerUpload | cfc-backend/src/test/java/com/etotem/cfc/controller/HealthReportControllerUploadTest.java |
cfc-backend/src/test/java/com/etotem/cfc/controller/HealthSleepControllerContractTest.java |
cfc-backend | 12 | HealthSleepControllerContract | cfc-backend/src/test/java/com/etotem/cfc/controller/HealthSleepControllerContractTest.java |
cfc-backend/src/test/java/com/etotem/cfc/controller/IndicatorControllerTest.java |
cfc-backend | 2 | IndicatorController | cfc-backend/src/test/java/com/etotem/cfc/controller/IndicatorControllerTest.java |
cfc-backend/src/test/java/com/etotem/cfc/controller/IndicatorFavoriteControllerTest.java |
cfc-backend | 10 | IndicatorFavoriteController | cfc-backend/src/test/java/com/etotem/cfc/controller/IndicatorFavoriteControllerTest.java |
cfc-backend/src/test/java/com/etotem/cfc/controller/MembershipControllerPlansLevelOrderTest.java |
cfc-backend | 1 | MembershipControllerPlansLevelOrder | cfc-backend/src/test/java/com/etotem/cfc/controller/MembershipControllerPlansLevelOrderTest.java |
cfc-backend/src/test/java/com/etotem/cfc/controller/ScG01LandingContractTest.java |
cfc-backend | 7 | ScG01LandingContract | cfc-backend/src/test/java/com/etotem/cfc/controller/ScG01LandingContractTest.java |
cfc-backend/src/test/java/com/etotem/cfc/controller/ScG03LoginMethodContractTest.java |
cfc-backend | 13 | ScG03LoginMethodContract | cfc-backend/src/test/java/com/etotem/cfc/controller/ScG03LoginMethodContractTest.java |
cfc-backend/src/test/java/com/etotem/cfc/controller/ScG04InviteRegisterContractTest.java |
cfc-backend | 9 | ScG04InviteRegisterContract | cfc-backend/src/test/java/com/etotem/cfc/controller/ScG04InviteRegisterContractTest.java |
cfc-backend/src/test/java/com/etotem/cfc/controller/ScG05AnonymousBrowseContractTest.java |
cfc-backend | 8 | ScG05AnonymousBrowseContract | cfc-backend/src/test/java/com/etotem/cfc/controller/ScG05AnonymousBrowseContractTest.java |
cfc-backend/src/test/java/com/etotem/cfc/controller/ScG07TestModeContractTest.java |
cfc-backend | 5 | ScG07TestModeContract | cfc-backend/src/test/java/com/etotem/cfc/controller/ScG07TestModeContractTest.java |
cfc-backend/src/test/java/com/etotem/cfc/controller/ScG08EnvAdaptiveContractTest.java |
cfc-backend | 5 | ScG08EnvAdaptiveContract | cfc-backend/src/test/java/com/etotem/cfc/controller/ScG08EnvAdaptiveContractTest.java |
cfc-backend/src/test/java/com/etotem/cfc/controller/ScG09LogoutContractTest.java |
cfc-backend | 6 | ScG09LogoutContract | cfc-backend/src/test/java/com/etotem/cfc/controller/ScG09LogoutContractTest.java |
cfc-backend/src/test/java/com/etotem/cfc/controller/ScG10RegisterGuideContractTest.java |
cfc-backend | 7 | ScG10RegisterGuideContract | cfc-backend/src/test/java/com/etotem/cfc/controller/ScG10RegisterGuideContractTest.java |
cfc-backend/src/test/java/com/etotem/cfc/controller/ScG11AgreementContractTest.java |
cfc-backend | 5 | ScG11AgreementContract | cfc-backend/src/test/java/com/etotem/cfc/controller/ScG11AgreementContractTest.java |
cfc-backend/src/test/java/com/etotem/cfc/controller/ScG12H5FallbackContractTest.java |
cfc-backend | 6 | ScG12H5FallbackContract | cfc-backend/src/test/java/com/etotem/cfc/controller/ScG12H5FallbackContractTest.java |
cfc-backend/src/test/java/com/etotem/cfc/controller/SurveyHealthReviewContractTest.java |
cfc-backend | 9 | SurveyHealthReviewContract | cfc-backend/src/test/java/com/etotem/cfc/controller/SurveyHealthReviewContractTest.java |
cfc-backend/src/test/java/com/etotem/cfc/controller/TeamInvitationCreateContractTest.java |
cfc-backend | 7 | TeamInvitationCreateContract | cfc-backend/src/test/java/com/etotem/cfc/controller/TeamInvitationCreateContractTest.java |
cfc-backend/src/test/java/com/etotem/cfc/controller/admin/AdminAuthControllerLoginContractTest.java |
cfc-backend | 15 | AdminAuthControllerLoginContract | cfc-backend/src/test/java/com/etotem/cfc/controller/admin/AdminAuthControllerLoginContractTest.java |
cfc-backend/src/test/java/com/etotem/cfc/controller/admin/AdminAuthControllerLoginStatusTest.java |
cfc-backend | 10 | AdminAuthControllerLoginStatus | cfc-backend/src/test/java/com/etotem/cfc/controller/admin/AdminAuthControllerLoginStatusTest.java |
cfc-backend/src/test/java/com/etotem/cfc/controller/admin/AdminAuthWechatScanTest.java |
cfc-backend | 11 | AdminAuthWechatScan | cfc-backend/src/test/java/com/etotem/cfc/controller/admin/AdminAuthWechatScanTest.java |
cfc-backend/src/test/java/com/etotem/cfc/controller/admin/AdminButlerControllerEnvelopeTest.java |
cfc-backend | 4 | AdminButlerControllerEnvelope | cfc-backend/src/test/java/com/etotem/cfc/controller/admin/AdminButlerControllerEnvelopeTest.java |
cfc-backend/src/test/java/com/etotem/cfc/controller/admin/AdminCommissionConfigControllerTest.java |
cfc-backend | 5 | AdminCommissionConfigController | cfc-backend/src/test/java/com/etotem/cfc/controller/admin/AdminCommissionConfigControllerTest.java |
cfc-backend/src/test/java/com/etotem/cfc/controller/admin/AdminCommissionConfigPartialUpdateTest.java |
cfc-backend | 2 | AdminCommissionConfigPartialUpdate | cfc-backend/src/test/java/com/etotem/cfc/controller/admin/AdminCommissionConfigPartialUpdateTest.java |
cfc-backend/src/test/java/com/etotem/cfc/controller/admin/AdminProductControllerBatchShelveTest.java |
cfc-backend | 4 | AdminProductControllerBatchShelve | cfc-backend/src/test/java/com/etotem/cfc/controller/admin/AdminProductControllerBatchShelveTest.java |
cfc-backend/src/test/java/com/etotem/cfc/controller/admin/ReportParserAdminControllerTest.java |
cfc-backend | 3 | ReportParserAdminController | cfc-backend/src/test/java/com/etotem/cfc/controller/admin/ReportParserAdminControllerTest.java |
cfc-backend/src/test/java/com/etotem/cfc/controller/admin/SupplyTeamControllerInviteTest.java |
cfc-backend | 7 | SupplyTeamControllerInvite | cfc-backend/src/test/java/com/etotem/cfc/controller/admin/SupplyTeamControllerInviteTest.java |
cfc-backend/src/test/java/com/etotem/cfc/controller/ai/AIChatControllerGateTest.java |
cfc-backend | 18 | AIChatControllerGate | cfc-backend/src/test/java/com/etotem/cfc/controller/ai/AIChatControllerGateTest.java |
cfc-backend/src/test/java/com/etotem/cfc/controller/ai/ButlerControllerGateTest.java |
cfc-backend | 9 | ButlerControllerGate | cfc-backend/src/test/java/com/etotem/cfc/controller/ai/ButlerControllerGateTest.java |
cfc-backend/src/test/java/com/etotem/cfc/controller/butler/ButlerControllerEnvelopeTest.java |
cfc-backend | 1 | ButlerControllerEnvelope | cfc-backend/src/test/java/com/etotem/cfc/controller/butler/ButlerControllerEnvelopeTest.java |
cfc-backend/src/test/java/com/etotem/cfc/controller/config/SleepConfigTagsMechanismContractTest.java |
cfc-backend | 10 | SleepConfigTagsMechanismContract | cfc-backend/src/test/java/com/etotem/cfc/controller/config/SleepConfigTagsMechanismContractTest.java |
cfc-backend/src/test/java/com/etotem/cfc/controller/family/FamilyInviteApproveRequestTest.java |
cfc-backend | 7 | FamilyInviteApproveRequest | cfc-backend/src/test/java/com/etotem/cfc/controller/family/FamilyInviteApproveRequestTest.java |
cfc-backend/src/test/java/com/etotem/cfc/controller/family/FamilyMembersControllerAddMemberTest.java |
cfc-backend | 7 | FamilyMembersControllerAddMember | cfc-backend/src/test/java/com/etotem/cfc/controller/family/FamilyMembersControllerAddMemberTest.java |
cfc-backend/src/test/java/com/etotem/cfc/controller/family/FamilyMembersControllerListTest.java |
cfc-backend | 4 | FamilyMembersControllerList | cfc-backend/src/test/java/com/etotem/cfc/controller/family/FamilyMembersControllerListTest.java |
cfc-backend/src/test/java/com/etotem/cfc/controller/family/FamilyMembersControllerRenameFamilyTest.java |
cfc-backend | 2 | FamilyMembersControllerRenameFamily | cfc-backend/src/test/java/com/etotem/cfc/controller/family/FamilyMembersControllerRenameFamilyTest.java |
cfc-backend/src/test/java/com/etotem/cfc/controller/growth/GrowthHistoryViewContractTest.java |
cfc-backend | 9 | GrowthHistoryViewContract | cfc-backend/src/test/java/com/etotem/cfc/controller/growth/GrowthHistoryViewContractTest.java |
cfc-backend/src/test/java/com/etotem/cfc/controller/guide/TeacherMessageControllerMyTest.java |
cfc-backend | 1 | TeacherMessageControllerMy | cfc-backend/src/test/java/com/etotem/cfc/controller/guide/TeacherMessageControllerMyTest.java |
cfc-backend/src/test/java/com/etotem/cfc/controller/guide/TrainingPlanControllerGetPlanDetailTest.java |
cfc-backend | 8 | TrainingPlanControllerGetPlanDetail | cfc-backend/src/test/java/com/etotem/cfc/controller/guide/TrainingPlanControllerGetPlanDetailTest.java |
cfc-backend/src/test/java/com/etotem/cfc/controller/guide/TrainingPlanControllerGetPlanListTest.java |
cfc-backend | 10 | TrainingPlanControllerGetPlanList | cfc-backend/src/test/java/com/etotem/cfc/controller/guide/TrainingPlanControllerGetPlanListTest.java |
cfc-backend/src/test/java/com/etotem/cfc/controller/reward/RewardEstimateControllerEstimateTest.java |
cfc-backend | 11 | RewardEstimateControllerEstimate | cfc-backend/src/test/java/com/etotem/cfc/controller/reward/RewardEstimateControllerEstimateTest.java |
cfc-backend/src/test/java/com/etotem/cfc/controller/reward/RewardEstimateControllerTest.java |
cfc-backend | 17 | RewardEstimateController | cfc-backend/src/test/java/com/etotem/cfc/controller/reward/RewardEstimateControllerTest.java |
cfc-backend/src/test/java/com/etotem/cfc/controller/task/TaskControllerCreateTaskTest.java |
cfc-backend | 7 | TaskControllerCreateTask | cfc-backend/src/test/java/com/etotem/cfc/controller/task/TaskControllerCreateTaskTest.java |
cfc-backend/src/test/java/com/etotem/cfc/controller/task/TaskControllerGetTaskHistoryTest.java |
cfc-backend | 7 | TaskControllerGetTaskHistory | cfc-backend/src/test/java/com/etotem/cfc/controller/task/TaskControllerGetTaskHistoryTest.java |
cfc-backend/src/test/java/com/etotem/cfc/controller/task/TaskControllerReviewTest.java |
cfc-backend | 17 | TaskControllerReview | cfc-backend/src/test/java/com/etotem/cfc/controller/task/TaskControllerReviewTest.java |
cfc-backend/src/test/java/com/etotem/cfc/dto/ActivityDTOTest.java |
cfc-backend | 3 | ActivityDTO | cfc-backend/src/test/java/com/etotem/cfc/dto/ActivityDTOTest.java |
cfc-backend/src/test/java/com/etotem/cfc/integration/DailyCheckinStreakFlowTest.java |
cfc-backend | 6 | DailyCheckinStreakFlow | cfc-backend/src/test/java/com/etotem/cfc/integration/DailyCheckinStreakFlowTest.java |
cfc-backend/src/test/java/com/etotem/cfc/integration/EnergySystemFlowTest.java |
cfc-backend | 7 | EnergySystemFlow | cfc-backend/src/test/java/com/etotem/cfc/integration/EnergySystemFlowTest.java |
cfc-backend/src/test/java/com/etotem/cfc/integration/GrowthRecordSyncFlowTest.java |
cfc-backend | 10 | GrowthRecordSyncFlow | cfc-backend/src/test/java/com/etotem/cfc/integration/GrowthRecordSyncFlowTest.java |
cfc-backend/src/test/java/com/etotem/cfc/integration/GuideModuleIntegrationTest.java |
cfc-backend | 4 | GuideModule | cfc-backend/src/test/java/com/etotem/cfc/integration/GuideModuleIntegrationTest.java |
cfc-backend/src/test/java/com/etotem/cfc/integration/PlannerBindInviteFlowTest.java |
cfc-backend | 9 | PlannerBindInviteFlow | cfc-backend/src/test/java/com/etotem/cfc/integration/PlannerBindInviteFlowTest.java |
cfc-backend/src/test/java/com/etotem/cfc/integration/controller/AIChatControllerTest.java |
cfc-backend | 17 | AIChatController | cfc-backend/src/test/java/com/etotem/cfc/integration/controller/AIChatControllerTest.java |
cfc-backend/src/test/java/com/etotem/cfc/integration/controller/ActivityControllerTest.java |
cfc-backend | 16 | ActivityController | cfc-backend/src/test/java/com/etotem/cfc/integration/controller/ActivityControllerTest.java |
cfc-backend/src/test/java/com/etotem/cfc/integration/controller/AdminFamilyOverviewControllerTest.java |
cfc-backend | 3 | AdminFamilyOverviewController | cfc-backend/src/test/java/com/etotem/cfc/integration/controller/AdminFamilyOverviewControllerTest.java |
cfc-backend/src/test/java/com/etotem/cfc/integration/controller/AdminSpecialPriceControllerTest.java |
cfc-backend | 8 | AdminSpecialPriceController | cfc-backend/src/test/java/com/etotem/cfc/integration/controller/AdminSpecialPriceControllerTest.java |
cfc-backend/src/test/java/com/etotem/cfc/integration/controller/ArticleCategoryControllerTest.java |
cfc-backend | 3 | ArticleCategoryController | cfc-backend/src/test/java/com/etotem/cfc/integration/controller/ArticleCategoryControllerTest.java |
cfc-backend/src/test/java/com/etotem/cfc/integration/controller/ArticleControllerTest.java |
cfc-backend | 11 | ArticleController | cfc-backend/src/test/java/com/etotem/cfc/integration/controller/ArticleControllerTest.java |
cfc-backend/src/test/java/com/etotem/cfc/integration/controller/AuthControllerTest.java |
cfc-backend | 39 | AuthController | cfc-backend/src/test/java/com/etotem/cfc/integration/controller/AuthControllerTest.java |
cfc-backend/src/test/java/com/etotem/cfc/integration/controller/DailyTaskControllerTest.java |
cfc-backend | 2 | DailyTaskController | cfc-backend/src/test/java/com/etotem/cfc/integration/controller/DailyTaskControllerTest.java |
cfc-backend/src/test/java/com/etotem/cfc/integration/controller/DimensionAdminControllerTest.java |
cfc-backend | 13 | DimensionAdminController | cfc-backend/src/test/java/com/etotem/cfc/integration/controller/DimensionAdminControllerTest.java |
cfc-backend/src/test/java/com/etotem/cfc/integration/controller/DimensionRegistryMapContractTest.java |
cfc-backend | 7 | DimensionRegistryMapContract | cfc-backend/src/test/java/com/etotem/cfc/integration/controller/DimensionRegistryMapContractTest.java |
cfc-backend/src/test/java/com/etotem/cfc/integration/controller/DimensionRegistryTreeTest.java |
cfc-backend | 9 | DimensionRegistryTree | cfc-backend/src/test/java/com/etotem/cfc/integration/controller/DimensionRegistryTreeTest.java |
cfc-backend/src/test/java/com/etotem/cfc/integration/controller/FamilyControllerTest.java |
cfc-backend | 8 | FamilyController | cfc-backend/src/test/java/com/etotem/cfc/integration/controller/FamilyControllerTest.java |
cfc-backend/src/test/java/com/etotem/cfc/integration/controller/GuideFamilyTaskControllerTest.java |
cfc-backend | 20 | GuideFamilyTaskController | cfc-backend/src/test/java/com/etotem/cfc/integration/controller/GuideFamilyTaskControllerTest.java |
cfc-backend/src/test/java/com/etotem/cfc/integration/controller/GuideOrderControllerTest.java |
cfc-backend | 8 | GuideOrderController | cfc-backend/src/test/java/com/etotem/cfc/integration/controller/GuideOrderControllerTest.java |
cfc-backend/src/test/java/com/etotem/cfc/integration/controller/GuideRolePermissionTest.java |
cfc-backend | 21 | GuideRolePermission | cfc-backend/src/test/java/com/etotem/cfc/integration/controller/GuideRolePermissionTest.java |
cfc-backend/src/test/java/com/etotem/cfc/integration/controller/GuideTeamControllerTest.java |
cfc-backend | 9 | GuideTeamController | cfc-backend/src/test/java/com/etotem/cfc/integration/controller/GuideTeamControllerTest.java |
cfc-backend/src/test/java/com/etotem/cfc/integration/controller/HealthDimensionControllerTest.java |
cfc-backend | 15 | HealthDimensionController | cfc-backend/src/test/java/com/etotem/cfc/integration/controller/HealthDimensionControllerTest.java |
cfc-backend/src/test/java/com/etotem/cfc/integration/controller/PaymentControllerTest.java |
cfc-backend | 12 | PaymentController | cfc-backend/src/test/java/com/etotem/cfc/integration/controller/PaymentControllerTest.java |
cfc-backend/src/test/java/com/etotem/cfc/integration/controller/ProductControllerTest.java |
cfc-backend | 16 | ProductController | cfc-backend/src/test/java/com/etotem/cfc/integration/controller/ProductControllerTest.java |
cfc-backend/src/test/java/com/etotem/cfc/integration/controller/ProductOrderControllerTest.java |
cfc-backend | 20 | ProductOrderController | cfc-backend/src/test/java/com/etotem/cfc/integration/controller/ProductOrderControllerTest.java |
cfc-backend/src/test/java/com/etotem/cfc/integration/controller/SpecialPriceControllerTest.java |
cfc-backend | 3 | SpecialPriceController | cfc-backend/src/test/java/com/etotem/cfc/integration/controller/SpecialPriceControllerTest.java |
cfc-backend/src/test/java/com/etotem/cfc/integration/controller/StatsControllerTest.java |
cfc-backend | 6 | StatsController | cfc-backend/src/test/java/com/etotem/cfc/integration/controller/StatsControllerTest.java |
cfc-backend/src/test/java/com/etotem/cfc/integration/controller/WishControllerTest.java |
cfc-backend | 29 | WishController | cfc-backend/src/test/java/com/etotem/cfc/integration/controller/WishControllerTest.java |
cfc-backend/src/test/java/com/etotem/cfc/integration/controller/mind/MindFortuneControllerTest.java |
cfc-backend | 1 | MindFortuneController | cfc-backend/src/test/java/com/etotem/cfc/integration/controller/mind/MindFortuneControllerTest.java |
cfc-backend/src/test/java/com/etotem/cfc/integration/service/ActivityAdminServiceTest.java |
cfc-backend | 10 | ActivityAdminService | cfc-backend/src/test/java/com/etotem/cfc/integration/service/ActivityAdminServiceTest.java |
cfc-backend/src/test/java/com/etotem/cfc/integration/service/ActivityServicePublishTest.java |
cfc-backend | 6 | ActivityServicePublish | cfc-backend/src/test/java/com/etotem/cfc/integration/service/ActivityServicePublishTest.java |
cfc-backend/src/test/java/com/etotem/cfc/integration/service/ArticleWorkflowTest.java |
cfc-backend | 14 | ArticleWorkflow | cfc-backend/src/test/java/com/etotem/cfc/integration/service/ArticleWorkflowTest.java |
cfc-backend/src/test/java/com/etotem/cfc/integration/service/ChallengeScoreServiceTest.java |
cfc-backend | 4 | ChallengeScoreService | cfc-backend/src/test/java/com/etotem/cfc/integration/service/ChallengeScoreServiceTest.java |
cfc-backend/src/test/java/com/etotem/cfc/integration/service/DailyOverviewServiceTest.java |
cfc-backend | 1 | DailyOverviewService | cfc-backend/src/test/java/com/etotem/cfc/integration/service/DailyOverviewServiceTest.java |
cfc-backend/src/test/java/com/etotem/cfc/integration/service/DanReportParseServiceTest.java |
cfc-backend | 38 | DanReportParseService | cfc-backend/src/test/java/com/etotem/cfc/integration/service/DanReportParseServiceTest.java |
cfc-backend/src/test/java/com/etotem/cfc/integration/service/DataMigrationServiceTest.java |
cfc-backend | 11 | DataMigrationService | cfc-backend/src/test/java/com/etotem/cfc/integration/service/DataMigrationServiceTest.java |
cfc-backend/src/test/java/com/etotem/cfc/integration/service/DimensionEnergySyncServiceTest.java |
cfc-backend | 5 | DimensionEnergySyncService | cfc-backend/src/test/java/com/etotem/cfc/integration/service/DimensionEnergySyncServiceTest.java |
cfc-backend/src/test/java/com/etotem/cfc/integration/service/DimensionScoreServiceTest.java |
cfc-backend | 21 | DimensionScoreService | cfc-backend/src/test/java/com/etotem/cfc/integration/service/DimensionScoreServiceTest.java |
cfc-backend/src/test/java/com/etotem/cfc/integration/service/FamilyFoodOverviewServiceTest.java |
cfc-backend | 9 | FamilyFoodOverviewService | cfc-backend/src/test/java/com/etotem/cfc/integration/service/FamilyFoodOverviewServiceTest.java |
cfc-backend/src/test/java/com/etotem/cfc/integration/service/FiveDimensionSelfCheckServiceTest.java |
cfc-backend | 2 | FiveDimensionSelfCheckService | cfc-backend/src/test/java/com/etotem/cfc/integration/service/FiveDimensionSelfCheckServiceTest.java |
cfc-backend/src/test/java/com/etotem/cfc/integration/service/FoodRecommendServiceTest.java |
cfc-backend | 21 | FoodRecommendService | cfc-backend/src/test/java/com/etotem/cfc/integration/service/FoodRecommendServiceTest.java |
cfc-backend/src/test/java/com/etotem/cfc/integration/service/FoodServiceTest.java |
cfc-backend | 12 | FoodService | cfc-backend/src/test/java/com/etotem/cfc/integration/service/FoodServiceTest.java |
cfc-backend/src/test/java/com/etotem/cfc/integration/service/FortuneServiceTest.java |
cfc-backend | 4 | FortuneService | cfc-backend/src/test/java/com/etotem/cfc/integration/service/FortuneServiceTest.java |
cfc-backend/src/test/java/com/etotem/cfc/integration/service/GuideApplicationServiceTest.java |
cfc-backend | 8 | GuideApplicationService | cfc-backend/src/test/java/com/etotem/cfc/integration/service/GuideApplicationServiceTest.java |
cfc-backend/src/test/java/com/etotem/cfc/integration/service/GuideFamilyServiceTest.java |
cfc-backend | 7 | GuideFamilyService | cfc-backend/src/test/java/com/etotem/cfc/integration/service/GuideFamilyServiceTest.java |
cfc-backend/src/test/java/com/etotem/cfc/integration/service/GuideHierarchyServiceTest.java |
cfc-backend | 10 | GuideHierarchyService | cfc-backend/src/test/java/com/etotem/cfc/integration/service/GuideHierarchyServiceTest.java |
cfc-backend/src/test/java/com/etotem/cfc/integration/service/GuidePackageServiceTest.java |
cfc-backend | 13 | GuidePackageService | cfc-backend/src/test/java/com/etotem/cfc/integration/service/GuidePackageServiceTest.java |
cfc-backend/src/test/java/com/etotem/cfc/integration/service/GuidePackageTemplateServiceTest.java |
cfc-backend | 6 | GuidePackageTemplateService | cfc-backend/src/test/java/com/etotem/cfc/integration/service/GuidePackageTemplateServiceTest.java |
cfc-backend/src/test/java/com/etotem/cfc/integration/service/MiniGameServiceTest.java |
cfc-backend | 5 | MiniGameService | cfc-backend/src/test/java/com/etotem/cfc/integration/service/MiniGameServiceTest.java |
cfc-backend/src/test/java/com/etotem/cfc/integration/service/NutritionDeficiencyServiceTest.java |
cfc-backend | 14 | NutritionDeficiencyService | cfc-backend/src/test/java/com/etotem/cfc/integration/service/NutritionDeficiencyServiceTest.java |
cfc-backend/src/test/java/com/etotem/cfc/integration/service/PdfParseServiceTest.java |
cfc-backend | 11 | PdfParseService | cfc-backend/src/test/java/com/etotem/cfc/integration/service/PdfParseServiceTest.java |
cfc-backend/src/test/java/com/etotem/cfc/integration/service/RelationshipQuestionnaireServiceTest.java |
cfc-backend | 5 | RelationshipQuestionnaireService | cfc-backend/src/test/java/com/etotem/cfc/integration/service/RelationshipQuestionnaireServiceTest.java |
cfc-backend/src/test/java/com/etotem/cfc/integration/service/ReportBlockAssemblerTest.java |
cfc-backend | 6 | ReportBlockAssembler | cfc-backend/src/test/java/com/etotem/cfc/integration/service/ReportBlockAssemblerTest.java |
cfc-backend/src/test/java/com/etotem/cfc/integration/service/ServiceContentServiceTest.java |
cfc-backend | 6 | ServiceContentService | cfc-backend/src/test/java/com/etotem/cfc/integration/service/ServiceContentServiceTest.java |
cfc-backend/src/test/java/com/etotem/cfc/integration/service/ServiceTypeServiceTest.java |
cfc-backend | 4 | ServiceTypeService | cfc-backend/src/test/java/com/etotem/cfc/integration/service/ServiceTypeServiceTest.java |
cfc-backend/src/test/java/com/etotem/cfc/integration/service/SupplySystemServiceTest.java |
cfc-backend | 18 | SupplySystemService | cfc-backend/src/test/java/com/etotem/cfc/integration/service/SupplySystemServiceTest.java |
cfc-backend/src/test/java/com/etotem/cfc/integration/service/TaskServiceMinigameTest.java |
cfc-backend | 5 | TaskServiceMinigame | cfc-backend/src/test/java/com/etotem/cfc/integration/service/TaskServiceMinigameTest.java |
cfc-backend/src/test/java/com/etotem/cfc/integration/service/TeacherLoginTest.java |
cfc-backend | 4 | TeacherLogin | cfc-backend/src/test/java/com/etotem/cfc/integration/service/TeacherLoginTest.java |
cfc-backend/src/test/java/com/etotem/cfc/integration/service/impl/DimensionScoreServiceImplTest.java |
cfc-backend | 6 | DimensionScoreServiceImpl | cfc-backend/src/test/java/com/etotem/cfc/integration/service/impl/DimensionScoreServiceImplTest.java |
cfc-backend/src/test/java/com/etotem/cfc/orchestration/OrchestrationEngineTest.java |
cfc-backend | 8 | OrchestrationEngine | cfc-backend/src/test/java/com/etotem/cfc/orchestration/OrchestrationEngineTest.java |
cfc-backend/src/test/java/com/etotem/cfc/orchestration/OrchestrationIntegrationTest.java |
cfc-backend | 7 | Orchestration | cfc-backend/src/test/java/com/etotem/cfc/orchestration/OrchestrationIntegrationTest.java |
cfc-backend/src/test/java/com/etotem/cfc/service/ActivityOrderServiceTest.java |
cfc-backend | 15 | ActivityOrderService | cfc-backend/src/test/java/com/etotem/cfc/service/ActivityOrderServiceTest.java |
cfc-backend/src/test/java/com/etotem/cfc/service/ActivityRegistrationQuotaConcurrencyTest.java |
cfc-backend | 6 | ActivityRegistrationQuotaConcurrency | cfc-backend/src/test/java/com/etotem/cfc/service/ActivityRegistrationQuotaConcurrencyTest.java |
cfc-backend/src/test/java/com/etotem/cfc/service/AiGatewayTimeoutTest.java |
cfc-backend | 1 | AiGatewayTimeout | cfc-backend/src/test/java/com/etotem/cfc/service/AiGatewayTimeoutTest.java |
cfc-backend/src/test/java/com/etotem/cfc/service/ArticleAudioServiceAutoGenTest.java |
cfc-backend | 3 | ArticleAudioServiceAutoGen | cfc-backend/src/test/java/com/etotem/cfc/service/ArticleAudioServiceAutoGenTest.java |
cfc-backend/src/test/java/com/etotem/cfc/service/ArticleAudioServiceChunkFilterTest.java |
cfc-backend | 3 | ArticleAudioServiceChunkFilter | cfc-backend/src/test/java/com/etotem/cfc/service/ArticleAudioServiceChunkFilterTest.java |
cfc-backend/src/test/java/com/etotem/cfc/service/ArticleServiceAudioInvalidationTest.java |
cfc-backend | 8 | ArticleServiceAudioInvalidation | cfc-backend/src/test/java/com/etotem/cfc/service/ArticleServiceAudioInvalidationTest.java |
cfc-backend/src/test/java/com/etotem/cfc/service/ButlerServiceListAllEnvelopeTest.java |
cfc-backend | 1 | ButlerServiceListAllEnvelope | cfc-backend/src/test/java/com/etotem/cfc/service/ButlerServiceListAllEnvelopeTest.java |
cfc-backend/src/test/java/com/etotem/cfc/service/CfBalanceServiceTest.java |
cfc-backend | 25 | CfBalanceService | cfc-backend/src/test/java/com/etotem/cfc/service/CfBalanceServiceTest.java |
cfc-backend/src/test/java/com/etotem/cfc/service/CfCommissionServiceSettleTest.java |
cfc-backend | 12 | CfCommissionServiceSettle | cfc-backend/src/test/java/com/etotem/cfc/service/CfCommissionServiceSettleTest.java |
cfc-backend/src/test/java/com/etotem/cfc/service/CfCommissionServiceTest.java |
cfc-backend | 2 | CfCommissionService | cfc-backend/src/test/java/com/etotem/cfc/service/CfCommissionServiceTest.java |
cfc-backend/src/test/java/com/etotem/cfc/service/CfEarnDispatchServiceTest.java |
cfc-backend | 8 | CfEarnDispatchService | cfc-backend/src/test/java/com/etotem/cfc/service/CfEarnDispatchServiceTest.java |
cfc-backend/src/test/java/com/etotem/cfc/service/CfGrowthPathwayEarnServiceTest.java |
cfc-backend | 16 | CfGrowthPathwayEarnService | cfc-backend/src/test/java/com/etotem/cfc/service/CfGrowthPathwayEarnServiceTest.java |
cfc-backend/src/test/java/com/etotem/cfc/service/CfLegacyLedgerMigrationServiceTest.java |
cfc-backend | 3 | CfLegacyLedgerMigrationService | cfc-backend/src/test/java/com/etotem/cfc/service/CfLegacyLedgerMigrationServiceTest.java |
cfc-backend/src/test/java/com/etotem/cfc/service/CfLegacyLedgerWiringTest.java |
cfc-backend | 5 | CfLegacyLedgerWiring | cfc-backend/src/test/java/com/etotem/cfc/service/CfLegacyLedgerWiringTest.java |
cfc-backend/src/test/java/com/etotem/cfc/service/CfPathwayEarnServiceTest.java |
cfc-backend | 32 | CfPathwayEarnService | cfc-backend/src/test/java/com/etotem/cfc/service/CfPathwayEarnServiceTest.java |
cfc-backend/src/test/java/com/etotem/cfc/service/CfReferralServiceSalesTierTest.java |
cfc-backend | 11 | CfReferralServiceSalesTier | cfc-backend/src/test/java/com/etotem/cfc/service/CfReferralServiceSalesTierTest.java |
cfc-backend/src/test/java/com/etotem/cfc/service/CfSpendDispatchServiceTest.java |
cfc-backend | 11 | CfSpendDispatchService | cfc-backend/src/test/java/com/etotem/cfc/service/CfSpendDispatchServiceTest.java |
cfc-backend/src/test/java/com/etotem/cfc/service/CfTransferServiceTest.java |
cfc-backend | 6 | CfTransferService | cfc-backend/src/test/java/com/etotem/cfc/service/CfTransferServiceTest.java |
cfc-backend/src/test/java/com/etotem/cfc/service/CommissionDistService410Test.java |
cfc-backend | 4 | CommissionDistService410 | cfc-backend/src/test/java/com/etotem/cfc/service/CommissionDistService410Test.java |
cfc-backend/src/test/java/com/etotem/cfc/service/CommissionServiceReferralF24Test.java |
cfc-backend | 5 | CommissionServiceReferralF24 | cfc-backend/src/test/java/com/etotem/cfc/service/CommissionServiceReferralF24Test.java |
cfc-backend/src/test/java/com/etotem/cfc/service/ConsigneeServiceBackfillTest.java |
cfc-backend | 2 | ConsigneeServiceBackfill | cfc-backend/src/test/java/com/etotem/cfc/service/ConsigneeServiceBackfillTest.java |
cfc-backend/src/test/java/com/etotem/cfc/service/ContractReflect.java |
cfc-backend | 0 | ContractReflect.java | cfc-backend/src/test/java/com/etotem/cfc/service/ContractReflect.java |
cfc-backend/src/test/java/com/etotem/cfc/service/EnergyServiceFamilyTest.java |
cfc-backend | 2 | EnergyServiceFamily | cfc-backend/src/test/java/com/etotem/cfc/service/EnergyServiceFamilyTest.java |
cfc-backend/src/test/java/com/etotem/cfc/service/EnergyServiceGrantEnergyTest.java |
cfc-backend | 2 | EnergyServiceGrantEnergy | cfc-backend/src/test/java/com/etotem/cfc/service/EnergyServiceGrantEnergyTest.java |
cfc-backend/src/test/java/com/etotem/cfc/service/EnergyServiceWealthIncomeTest.java |
cfc-backend | 4 | EnergyServiceWealthIncome | cfc-backend/src/test/java/com/etotem/cfc/service/EnergyServiceWealthIncomeTest.java |
cfc-backend/src/test/java/com/etotem/cfc/service/FamilyAdminOverviewServiceTest.java |
cfc-backend | 3 | FamilyAdminOverviewService | cfc-backend/src/test/java/com/etotem/cfc/service/FamilyAdminOverviewServiceTest.java |
cfc-backend/src/test/java/com/etotem/cfc/service/FamilyJoinRequestServiceJoinRequiredInfoContractTest.java |
cfc-backend | 10 | FamilyJoinRequestServiceJoinRequiredInfoContract | cfc-backend/src/test/java/com/etotem/cfc/service/FamilyJoinRequestServiceJoinRequiredInfoContractTest.java |
cfc-backend/src/test/java/com/etotem/cfc/service/FamilyJoinRequestServiceJoinValidationGateTest.java |
cfc-backend | 12 | FamilyJoinRequestServiceJoinValidationGate | cfc-backend/src/test/java/com/etotem/cfc/service/FamilyJoinRequestServiceJoinValidationGateTest.java |
cfc-backend/src/test/java/com/etotem/cfc/service/FamilyJoinRequestServiceReferrerBindTest.java |
cfc-backend | 5 | FamilyJoinRequestServiceReferrerBind | cfc-backend/src/test/java/com/etotem/cfc/service/FamilyJoinRequestServiceReferrerBindTest.java |
cfc-backend/src/test/java/com/etotem/cfc/service/FamilyMemberServiceIsChildTest.java |
cfc-backend | 5 | FamilyMemberServiceIsChild | cfc-backend/src/test/java/com/etotem/cfc/service/FamilyMemberServiceIsChildTest.java |
cfc-backend/src/test/java/com/etotem/cfc/service/FamilyPlatformPointsServiceCouponTest.java |
cfc-backend | 5 | FamilyPlatformPointsServiceCoupon | cfc-backend/src/test/java/com/etotem/cfc/service/FamilyPlatformPointsServiceCouponTest.java |
cfc-backend/src/test/java/com/etotem/cfc/service/FoodRecommendMemberViewResolutionTest.java |
cfc-backend | 6 | FoodRecommendMemberViewResolution | cfc-backend/src/test/java/com/etotem/cfc/service/FoodRecommendMemberViewResolutionTest.java |
cfc-backend/src/test/java/com/etotem/cfc/service/GuideConfigServiceTest.java |
cfc-backend | 11 | GuideConfigService | cfc-backend/src/test/java/com/etotem/cfc/service/GuideConfigServiceTest.java |
cfc-backend/src/test/java/com/etotem/cfc/service/HealthReportServiceAuditConfirmTest.java |
cfc-backend | 8 | HealthReportServiceAuditConfirm | cfc-backend/src/test/java/com/etotem/cfc/service/HealthReportServiceAuditConfirmTest.java |
cfc-backend/src/test/java/com/etotem/cfc/service/HealthReportServiceBackfillResilienceTest.java |
cfc-backend | 5 | HealthReportServiceBackfillResilience | cfc-backend/src/test/java/com/etotem/cfc/service/HealthReportServiceBackfillResilienceTest.java |
cfc-backend/src/test/java/com/etotem/cfc/service/HealthReportServiceIndicatorsTest.java |
cfc-backend | 3 | HealthReportServiceIndicators | cfc-backend/src/test/java/com/etotem/cfc/service/HealthReportServiceIndicatorsTest.java |
cfc-backend/src/test/java/com/etotem/cfc/service/HealthReportServiceTest.java |
cfc-backend | 8 | HealthReportService | cfc-backend/src/test/java/com/etotem/cfc/service/HealthReportServiceTest.java |
cfc-backend/src/test/java/com/etotem/cfc/service/IndicatorChangeServiceSemanticTest.java |
cfc-backend | 20 | IndicatorChangeServiceSemantic | cfc-backend/src/test/java/com/etotem/cfc/service/IndicatorChangeServiceSemanticTest.java |
cfc-backend/src/test/java/com/etotem/cfc/service/IndicatorChangeServiceTest.java |
cfc-backend | 23 | IndicatorChangeService | cfc-backend/src/test/java/com/etotem/cfc/service/IndicatorChangeServiceTest.java |
cfc-backend/src/test/java/com/etotem/cfc/service/IndicatorCorrelationServiceTest.java |
cfc-backend | 1 | IndicatorCorrelationService | cfc-backend/src/test/java/com/etotem/cfc/service/IndicatorCorrelationServiceTest.java |
cfc-backend/src/test/java/com/etotem/cfc/service/IndicatorFavoriteServiceTest.java |
cfc-backend | 6 | IndicatorFavoriteService | cfc-backend/src/test/java/com/etotem/cfc/service/IndicatorFavoriteServiceTest.java |
cfc-backend/src/test/java/com/etotem/cfc/service/IndicatorMappingServiceTest.java |
cfc-backend | 4 | IndicatorMappingService | cfc-backend/src/test/java/com/etotem/cfc/service/IndicatorMappingServiceTest.java |
cfc-backend/src/test/java/com/etotem/cfc/service/IndicatorTimelineServiceTest.java |
cfc-backend | 12 | IndicatorTimelineService | cfc-backend/src/test/java/com/etotem/cfc/service/IndicatorTimelineServiceTest.java |
cfc-backend/src/test/java/com/etotem/cfc/service/IndicatorTrendServiceTest.java |
cfc-backend | 9 | IndicatorTrendService | cfc-backend/src/test/java/com/etotem/cfc/service/IndicatorTrendServiceTest.java |
cfc-backend/src/test/java/com/etotem/cfc/service/IndicatorValueMapperTest.java |
cfc-backend | 1 | IndicatorValueMapper | cfc-backend/src/test/java/com/etotem/cfc/service/IndicatorValueMapperTest.java |
cfc-backend/src/test/java/com/etotem/cfc/service/MembershipPaySwitchTest.java |
cfc-backend | 6 | MembershipPaySwitch | cfc-backend/src/test/java/com/etotem/cfc/service/MembershipPaySwitchTest.java |
cfc-backend/src/test/java/com/etotem/cfc/service/MembershipServiceAiGateTest.java |
cfc-backend | 12 | MembershipServiceAiGate | cfc-backend/src/test/java/com/etotem/cfc/service/MembershipServiceAiGateTest.java |
cfc-backend/src/test/java/com/etotem/cfc/service/MembershipServiceTest.java |
cfc-backend | 17 | MembershipService | cfc-backend/src/test/java/com/etotem/cfc/service/MembershipServiceTest.java |
cfc-backend/src/test/java/com/etotem/cfc/service/NormalizeIndicatorPipelineTest.java |
cfc-backend | 3 | NormalizeIndicatorPipeline | cfc-backend/src/test/java/com/etotem/cfc/service/NormalizeIndicatorPipelineTest.java |
cfc-backend/src/test/java/com/etotem/cfc/service/NumSoulCalculatorTest.java |
cfc-backend | 5 | NumSoulCalculator | cfc-backend/src/test/java/com/etotem/cfc/service/NumSoulCalculatorTest.java |
cfc-backend/src/test/java/com/etotem/cfc/service/PaymentServiceORDRoutingTest.java |
cfc-backend | 3 | PaymentServiceORDRouting | cfc-backend/src/test/java/com/etotem/cfc/service/PaymentServiceORDRoutingTest.java |
cfc-backend/src/test/java/com/etotem/cfc/service/PlatformPointsServiceTest.java |
cfc-backend | 9 | PlatformPointsService | cfc-backend/src/test/java/com/etotem/cfc/service/PlatformPointsServiceTest.java |
cfc-backend/src/test/java/com/etotem/cfc/service/PointsExchangeServiceTest.java |
cfc-backend | 4 | PointsExchangeService | cfc-backend/src/test/java/com/etotem/cfc/service/PointsExchangeServiceTest.java |
cfc-backend/src/test/java/com/etotem/cfc/service/ProductOrderServiceFulfillmentMultiModeTest.java |
cfc-backend | 6 | ProductOrderServiceFulfillmentMultiMode | cfc-backend/src/test/java/com/etotem/cfc/service/ProductOrderServiceFulfillmentMultiModeTest.java |
cfc-backend/src/test/java/com/etotem/cfc/service/ProductOrderServiceSpecialDealTest.java |
cfc-backend | 8 | ProductOrderServiceSpecialDeal | cfc-backend/src/test/java/com/etotem/cfc/service/ProductOrderServiceSpecialDealTest.java |
cfc-backend/src/test/java/com/etotem/cfc/service/ProductOrderServiceUpdateExpressFieldTest.java |
cfc-backend | 3 | ProductOrderServiceUpdateExpressField | cfc-backend/src/test/java/com/etotem/cfc/service/ProductOrderServiceUpdateExpressFieldTest.java |
cfc-backend/src/test/java/com/etotem/cfc/service/ProfitPoolOrderContractRedTest.java |
cfc-backend | 4 | ProfitPoolOrderContractRed | cfc-backend/src/test/java/com/etotem/cfc/service/ProfitPoolOrderContractRedTest.java |
cfc-backend/src/test/java/com/etotem/cfc/service/RealNameBackfillServiceTest.java |
cfc-backend | 8 | RealNameBackfillService | cfc-backend/src/test/java/com/etotem/cfc/service/RealNameBackfillServiceTest.java |
cfc-backend/src/test/java/com/etotem/cfc/service/ReportAnalyzeQuotaServiceTest.java |
cfc-backend | 6 | ReportAnalyzeQuotaService | cfc-backend/src/test/java/com/etotem/cfc/service/ReportAnalyzeQuotaServiceTest.java |
cfc-backend/src/test/java/com/etotem/cfc/service/ReportDateExtractorTest.java |
cfc-backend | 6 | ReportDateExtractor | cfc-backend/src/test/java/com/etotem/cfc/service/ReportDateExtractorTest.java |
cfc-backend/src/test/java/com/etotem/cfc/service/ReportSummaryServiceCompletenessTest.java |
cfc-backend | 1 | ReportSummaryServiceCompleteness | cfc-backend/src/test/java/com/etotem/cfc/service/ReportSummaryServiceCompletenessTest.java |
cfc-backend/src/test/java/com/etotem/cfc/service/RewardRuleServiceBatchEstimateTest.java |
cfc-backend | 9 | RewardRuleServiceBatchEstimate | cfc-backend/src/test/java/com/etotem/cfc/service/RewardRuleServiceBatchEstimateTest.java |
cfc-backend/src/test/java/com/etotem/cfc/service/RewardRuleServiceEstimateTest.java |
cfc-backend | 21 | RewardRuleServiceEstimate | cfc-backend/src/test/java/com/etotem/cfc/service/RewardRuleServiceEstimateTest.java |
cfc-backend/src/test/java/com/etotem/cfc/service/SpecialPriceServiceTest.java |
cfc-backend | 9 | SpecialPriceService | cfc-backend/src/test/java/com/etotem/cfc/service/SpecialPriceServiceTest.java |
cfc-backend/src/test/java/com/etotem/cfc/service/StarScoreCalculatorContractRedTest.java |
cfc-backend | 10 | StarScoreCalculatorContractRed | cfc-backend/src/test/java/com/etotem/cfc/service/StarScoreCalculatorContractRedTest.java |
cfc-backend/src/test/java/com/etotem/cfc/service/TaskServiceCfEarnTest.java |
cfc-backend | 4 | TaskServiceCfEarn | cfc-backend/src/test/java/com/etotem/cfc/service/TaskServiceCfEarnTest.java |
cfc-backend/src/test/java/com/etotem/cfc/service/TaskServiceReviewTest.java |
cfc-backend | 15 | TaskServiceReview | cfc-backend/src/test/java/com/etotem/cfc/service/TaskServiceReviewTest.java |
cfc-backend/src/test/java/com/etotem/cfc/service/TeamAwardRecordContractRedTest.java |
cfc-backend | 6 | TeamAwardRecordContractRed | cfc-backend/src/test/java/com/etotem/cfc/service/TeamAwardRecordContractRedTest.java |
cfc-backend/src/test/java/com/etotem/cfc/service/TeamProfitContract.java |
cfc-backend | 0 | TeamProfitContract.java | cfc-backend/src/test/java/com/etotem/cfc/service/TeamProfitContract.java |
cfc-backend/src/test/java/com/etotem/cfc/service/TeamProfitSchemaContractRedTest.java |
cfc-backend | 6 | TeamProfitSchemaContractRed | cfc-backend/src/test/java/com/etotem/cfc/service/TeamProfitSchemaContractRedTest.java |
cfc-backend/src/test/java/com/etotem/cfc/service/TeamShareRecordEightShareContractRedTest.java |
cfc-backend | 6 | TeamShareRecordEightShareContractRed | cfc-backend/src/test/java/com/etotem/cfc/service/TeamShareRecordEightShareContractRedTest.java |
cfc-backend/src/test/java/com/etotem/cfc/service/TencentTtsServiceAuthorizationTest.java |
cfc-backend | 4 | TencentTtsServiceAuthorization | cfc-backend/src/test/java/com/etotem/cfc/service/TencentTtsServiceAuthorizationTest.java |
cfc-backend/src/test/java/com/etotem/cfc/service/UserAddressServiceBackfillTest.java |
cfc-backend | 2 | UserAddressServiceBackfill | cfc-backend/src/test/java/com/etotem/cfc/service/UserAddressServiceBackfillTest.java |
cfc-backend/src/test/java/com/etotem/cfc/service/UserServiceEffectiveFamilyIdsTest.java |
cfc-backend | 5 | UserServiceEffectiveFamilyIds | cfc-backend/src/test/java/com/etotem/cfc/service/UserServiceEffectiveFamilyIdsTest.java |
cfc-backend/src/test/java/com/etotem/cfc/service/UserServiceFamilyNameLinkTest.java |
cfc-backend | 2 | UserServiceFamilyNameLink | cfc-backend/src/test/java/com/etotem/cfc/service/UserServiceFamilyNameLinkTest.java |
cfc-backend/src/test/java/com/etotem/cfc/service/UserServiceWechatLoginContractTest.java |
cfc-backend | 6 | UserServiceWechatLoginContract | cfc-backend/src/test/java/com/etotem/cfc/service/UserServiceWechatLoginContractTest.java |
cfc-backend/src/test/java/com/etotem/cfc/service/UserServiceWechatLoginTest.java |
cfc-backend | 5 | UserServiceWechatLogin | cfc-backend/src/test/java/com/etotem/cfc/service/UserServiceWechatLoginTest.java |
cfc-backend/src/test/java/com/etotem/cfc/service/WishServiceTest.java |
cfc-backend | 4 | WishService | cfc-backend/src/test/java/com/etotem/cfc/service/WishServiceTest.java |
cfc-backend/src/test/java/com/etotem/cfc/service/WithdrawalServiceTest.java |
cfc-backend | 6 | WithdrawalService | cfc-backend/src/test/java/com/etotem/cfc/service/WithdrawalServiceTest.java |
cfc-backend/src/test/java/com/etotem/cfc/service/impl/CfGrowthEarnCallSiteTest.java |
cfc-backend | 4 | CfGrowthEarnCallSite | cfc-backend/src/test/java/com/etotem/cfc/service/impl/CfGrowthEarnCallSiteTest.java |
cfc-backend/src/test/java/com/etotem/cfc/service/impl/PurchaseServiceImplRenewalTest.java |
cfc-backend | 4 | PurchaseServiceImplRenewal | cfc-backend/src/test/java/com/etotem/cfc/service/impl/PurchaseServiceImplRenewalTest.java |
cfc-backend/src/test/java/com/etotem/cfc/task/OrderTimeoutCancelTaskSpecialDealTest.java |
cfc-backend | 3 | OrderTimeoutCancelTaskSpecialDeal | cfc-backend/src/test/java/com/etotem/cfc/task/OrderTimeoutCancelTaskSpecialDealTest.java |
cfc-backend/src/test/java/com/etotem/cfc/task/TaskCheckinWebhookReminderTaskTest.java |
cfc-backend | 7 | TaskCheckinWebhookReminderTask | cfc-backend/src/test/java/com/etotem/cfc/task/TaskCheckinWebhookReminderTaskTest.java |
cfc-backend/src/test/java/com/etotem/cfc/task/VirtualPayTimeoutTaskTest.java |
cfc-backend | 5 | VirtualPayTimeoutTask | cfc-backend/src/test/java/com/etotem/cfc/task/VirtualPayTimeoutTaskTest.java |
cfc-backend/src/test/java/com/etotem/cfc/testutil/FrontendSourceLocator.java |
cfc-backend | 0 | FrontendSourceLocator.java | cfc-backend/src/test/java/com/etotem/cfc/testutil/FrontendSourceLocator.java |
cfc-backend/src/test/java/com/etotem/cfc/unit/ActivityAuditTest.java |
cfc-backend | 10 | ActivityAudit | cfc-backend/src/test/java/com/etotem/cfc/unit/ActivityAuditTest.java |
cfc-backend/src/test/java/com/etotem/cfc/unit/ActivityRegistrationListTest.java |
cfc-backend | 3 | ActivityRegistrationList | cfc-backend/src/test/java/com/etotem/cfc/unit/ActivityRegistrationListTest.java |
cfc-backend/src/test/java/com/etotem/cfc/unit/ActivityRegistrationQuotaUnitTest.java |
cfc-backend | 8 | ActivityRegistrationQuotaUnit | cfc-backend/src/test/java/com/etotem/cfc/unit/ActivityRegistrationQuotaUnitTest.java |
cfc-backend/src/test/java/com/etotem/cfc/unit/ActivityRegistrationRejectTest.java |
cfc-backend | 3 | ActivityRegistrationReject | cfc-backend/src/test/java/com/etotem/cfc/unit/ActivityRegistrationRejectTest.java |
cfc-backend/src/test/java/com/etotem/cfc/unit/ActivityTagServiceTest.java |
cfc-backend | 5 | ActivityTagService | cfc-backend/src/test/java/com/etotem/cfc/unit/ActivityTagServiceTest.java |
cfc-backend/src/test/java/com/etotem/cfc/unit/ActivityTeamServiceUnitTest.java |
cfc-backend | 12 | ActivityTeamServiceUnit | cfc-backend/src/test/java/com/etotem/cfc/unit/ActivityTeamServiceUnitTest.java |
cfc-backend/src/test/java/com/etotem/cfc/unit/AfterSalesScS06ContractTest.java |
cfc-backend | 12 | AfterSalesScS06Contract | cfc-backend/src/test/java/com/etotem/cfc/unit/AfterSalesScS06ContractTest.java |
cfc-backend/src/test/java/com/etotem/cfc/unit/ArticleAutoTagServiceTest.java |
cfc-backend | 8 | ArticleAutoTagService | cfc-backend/src/test/java/com/etotem/cfc/unit/ArticleAutoTagServiceTest.java |
cfc-backend/src/test/java/com/etotem/cfc/unit/ArticleBackfillTest.java |
cfc-backend | 2 | ArticleBackfill | cfc-backend/src/test/java/com/etotem/cfc/unit/ArticleBackfillTest.java |
cfc-backend/src/test/java/com/etotem/cfc/unit/ArticleRelatedServiceTest.java |
cfc-backend | 6 | ArticleRelatedService | cfc-backend/src/test/java/com/etotem/cfc/unit/ArticleRelatedServiceTest.java |
cfc-backend/src/test/java/com/etotem/cfc/unit/AssessmentComparisonContractTest.java |
cfc-backend | 6 | AssessmentComparisonContract | cfc-backend/src/test/java/com/etotem/cfc/unit/AssessmentComparisonContractTest.java |
cfc-backend/src/test/java/com/etotem/cfc/unit/AssessmentPlanContractTestBase.java |
cfc-backend | 0 | AssessmentPlanContractTestBase.java | cfc-backend/src/test/java/com/etotem/cfc/unit/AssessmentPlanContractTestBase.java |
cfc-backend/src/test/java/com/etotem/cfc/unit/AssessmentQuotaAppointmentContractTest.java |
cfc-backend | 27 | AssessmentQuotaAppointmentContract | cfc-backend/src/test/java/com/etotem/cfc/unit/AssessmentQuotaAppointmentContractTest.java |
cfc-backend/src/test/java/com/etotem/cfc/unit/AttributionAdjustServiceTest.java |
cfc-backend | 5 | AttributionAdjustService | cfc-backend/src/test/java/com/etotem/cfc/unit/AttributionAdjustServiceTest.java |
cfc-backend/src/test/java/com/etotem/cfc/unit/AttributionComplianceGateTest.java |
cfc-backend | 17 | AttributionComplianceGate | cfc-backend/src/test/java/com/etotem/cfc/unit/AttributionComplianceGateTest.java |
cfc-backend/src/test/java/com/etotem/cfc/unit/AttributionPipelineMockTest.java |
cfc-backend | 2 | AttributionPipelineMock | cfc-backend/src/test/java/com/etotem/cfc/unit/AttributionPipelineMockTest.java |
cfc-backend/src/test/java/com/etotem/cfc/unit/AttributionPlanServiceTest.java |
cfc-backend | 2 | AttributionPlanService | cfc-backend/src/test/java/com/etotem/cfc/unit/AttributionPlanServiceTest.java |
cfc-backend/src/test/java/com/etotem/cfc/unit/AttributionRedlinesTest.java |
cfc-backend | 8 | AttributionRedlines | cfc-backend/src/test/java/com/etotem/cfc/unit/AttributionRedlinesTest.java |
cfc-backend/src/test/java/com/etotem/cfc/unit/BadgeServiceUnlockNoticeTest.java |
cfc-backend | 6 | BadgeServiceUnlockNotice | cfc-backend/src/test/java/com/etotem/cfc/unit/BadgeServiceUnlockNoticeTest.java |
cfc-backend/src/test/java/com/etotem/cfc/unit/CartReplaceComboTest.java |
cfc-backend | 5 | CartReplaceCombo | cfc-backend/src/test/java/com/etotem/cfc/unit/CartReplaceComboTest.java |
cfc-backend/src/test/java/com/etotem/cfc/unit/CfBalanceControllerTest.java |
cfc-backend | 8 | CfBalanceController | cfc-backend/src/test/java/com/etotem/cfc/unit/CfBalanceControllerTest.java |
cfc-backend/src/test/java/com/etotem/cfc/unit/CoachButlerNotificationContractTest.java |
cfc-backend | 14 | CoachButlerNotificationContract | cfc-backend/src/test/java/com/etotem/cfc/unit/CoachButlerNotificationContractTest.java |
cfc-backend/src/test/java/com/etotem/cfc/unit/ComboOfferCalculatorTest.java |
cfc-backend | 8 | ComboOfferCalculator | cfc-backend/src/test/java/com/etotem/cfc/unit/ComboOfferCalculatorTest.java |
cfc-backend/src/test/java/com/etotem/cfc/unit/ComboOrderStockTest.java |
cfc-backend | 3 | ComboOrderStock | cfc-backend/src/test/java/com/etotem/cfc/unit/ComboOrderStockTest.java |
cfc-backend/src/test/java/com/etotem/cfc/unit/ComboServiceTest.java |
cfc-backend | 10 | ComboService | cfc-backend/src/test/java/com/etotem/cfc/unit/ComboServiceTest.java |
cfc-backend/src/test/java/com/etotem/cfc/unit/ConditionEvaluatorServiceTest.java |
cfc-backend | 12 | ConditionEvaluatorService | cfc-backend/src/test/java/com/etotem/cfc/unit/ConditionEvaluatorServiceTest.java |
cfc-backend/src/test/java/com/etotem/cfc/unit/ConditionalPathogenLowSideRuleTest.java |
cfc-backend | 10 | ConditionalPathogenLowSideRule | cfc-backend/src/test/java/com/etotem/cfc/unit/ConditionalPathogenLowSideRuleTest.java |
cfc-backend/src/test/java/com/etotem/cfc/unit/CouponUseScP57ScP75ContractTest.java |
cfc-backend | 11 | CouponUseScP57ScP75Contract | cfc-backend/src/test/java/com/etotem/cfc/unit/CouponUseScP57ScP75ContractTest.java |
cfc-backend/src/test/java/com/etotem/cfc/unit/DanAssessmentExecutionContractTest.java |
cfc-backend | 11 | DanAssessmentExecutionContract | cfc-backend/src/test/java/com/etotem/cfc/unit/DanAssessmentExecutionContractTest.java |
cfc-backend/src/test/java/com/etotem/cfc/unit/DanReportUploadContractTest.java |
cfc-backend | 11 | DanReportUploadContract | cfc-backend/src/test/java/com/etotem/cfc/unit/DanReportUploadContractTest.java |
cfc-backend/src/test/java/com/etotem/cfc/unit/DietFoodHealthAdjustContractTest.java |
cfc-backend | 10 | DietFoodHealthAdjustContract | cfc-backend/src/test/java/com/etotem/cfc/unit/DietFoodHealthAdjustContractTest.java |
cfc-backend/src/test/java/com/etotem/cfc/unit/DimensionCodeConstantsTest.java |
cfc-backend | 2 | DimensionCodeConstants | cfc-backend/src/test/java/com/etotem/cfc/unit/DimensionCodeConstantsTest.java |
cfc-backend/src/test/java/com/etotem/cfc/unit/EnergyBehaviorConfigContractTest.java |
cfc-backend | 7 | EnergyBehaviorConfigContract | cfc-backend/src/test/java/com/etotem/cfc/unit/EnergyBehaviorConfigContractTest.java |
cfc-backend/src/test/java/com/etotem/cfc/unit/EnergyConfigAdminContractTest.java |
cfc-backend | 18 | EnergyConfigAdminContract | cfc-backend/src/test/java/com/etotem/cfc/unit/EnergyConfigAdminContractTest.java |
cfc-backend/src/test/java/com/etotem/cfc/unit/EnergyContractTestBase.java |
cfc-backend | 0 | EnergyContractTestBase.java | cfc-backend/src/test/java/com/etotem/cfc/unit/EnergyContractTestBase.java |
cfc-backend/src/test/java/com/etotem/cfc/unit/EnergyGrantContractTest.java |
cfc-backend | 9 | EnergyGrantContract | cfc-backend/src/test/java/com/etotem/cfc/unit/EnergyGrantContractTest.java |
cfc-backend/src/test/java/com/etotem/cfc/unit/EnergyIsolationContractTest.java |
cfc-backend | 8 | EnergyIsolationContract | cfc-backend/src/test/java/com/etotem/cfc/unit/EnergyIsolationContractTest.java |
cfc-backend/src/test/java/com/etotem/cfc/unit/EnergyLogsContractScoreHistoryTest.java |
cfc-backend | 11 | EnergyLogsContractScoreHistory | cfc-backend/src/test/java/com/etotem/cfc/unit/EnergyLogsContractScoreHistoryTest.java |
cfc-backend/src/test/java/com/etotem/cfc/unit/EnergyOverviewContractTest.java |
cfc-backend | 7 | EnergyOverviewContract | cfc-backend/src/test/java/com/etotem/cfc/unit/EnergyOverviewContractTest.java |
cfc-backend/src/test/java/com/etotem/cfc/unit/FamilyJoinValidationRulesContractTest.java |
cfc-backend | 14 | FamilyJoinValidationRulesContract | cfc-backend/src/test/java/com/etotem/cfc/unit/FamilyJoinValidationRulesContractTest.java |
cfc-backend/src/test/java/com/etotem/cfc/unit/FamilyMemberDimensionBaseScoreServiceTest.java |
cfc-backend | 7 | FamilyMemberDimensionBaseScoreService | cfc-backend/src/test/java/com/etotem/cfc/unit/FamilyMemberDimensionBaseScoreServiceTest.java |
cfc-backend/src/test/java/com/etotem/cfc/unit/FamilyMemberRelationshipLabelTest.java |
cfc-backend | 8 | FamilyMemberRelationshipLabel | cfc-backend/src/test/java/com/etotem/cfc/unit/FamilyMemberRelationshipLabelTest.java |
cfc-backend/src/test/java/com/etotem/cfc/unit/FamilyMemberServiceRenameTest.java |
cfc-backend | 4 | FamilyMemberServiceRename | cfc-backend/src/test/java/com/etotem/cfc/unit/FamilyMemberServiceRenameTest.java |
cfc-backend/src/test/java/com/etotem/cfc/unit/FamilyNamingSupportTest.java |
cfc-backend | 5 | FamilyNamingSupport | cfc-backend/src/test/java/com/etotem/cfc/unit/FamilyNamingSupportTest.java |
cfc-backend/src/test/java/com/etotem/cfc/unit/FamilyRelationshipServiceLabelTest.java |
cfc-backend | 6 | FamilyRelationshipServiceLabel | cfc-backend/src/test/java/com/etotem/cfc/unit/FamilyRelationshipServiceLabelTest.java |
cfc-backend/src/test/java/com/etotem/cfc/unit/FamilyUserSwitchRoleTest.java |
cfc-backend | 13 | FamilyUserSwitchRole | cfc-backend/src/test/java/com/etotem/cfc/unit/FamilyUserSwitchRoleTest.java |
cfc-backend/src/test/java/com/etotem/cfc/unit/FiveDimensionScoreServiceTest.java |
cfc-backend | 12 | FiveDimensionScoreService | cfc-backend/src/test/java/com/etotem/cfc/unit/FiveDimensionScoreServiceTest.java |
cfc-backend/src/test/java/com/etotem/cfc/unit/FiveDimensionSelfCheckContractTest.java |
cfc-backend | 15 | FiveDimensionSelfCheckContract | cfc-backend/src/test/java/com/etotem/cfc/unit/FiveDimensionSelfCheckContractTest.java |
cfc-backend/src/test/java/com/etotem/cfc/unit/GlobalSearchScP82ContractTest.java |
cfc-backend | 5 | GlobalSearchScP82Contract | cfc-backend/src/test/java/com/etotem/cfc/unit/GlobalSearchScP82ContractTest.java |
cfc-backend/src/test/java/com/etotem/cfc/unit/GuheEvidenceIsolateContractTest.java |
cfc-backend | 12 | GuheEvidenceIsolateContract | cfc-backend/src/test/java/com/etotem/cfc/unit/GuheEvidenceIsolateContractTest.java |
cfc-backend/src/test/java/com/etotem/cfc/unit/GuheGateLowSideRedlineContractTest.java |
cfc-backend | 12 | GuheGateLowSideRedlineContract | cfc-backend/src/test/java/com/etotem/cfc/unit/GuheGateLowSideRedlineContractTest.java |
cfc-backend/src/test/java/com/etotem/cfc/unit/GuheGateStrainBlockContractTest.java |
cfc-backend | 6 | GuheGateStrainBlockContract | cfc-backend/src/test/java/com/etotem/cfc/unit/GuheGateStrainBlockContractTest.java |
cfc-backend/src/test/java/com/etotem/cfc/unit/GuheKbFieldExposeContractTest.java |
cfc-backend | 6 | GuheKbFieldExposeContract | cfc-backend/src/test/java/com/etotem/cfc/unit/GuheKbFieldExposeContractTest.java |
cfc-backend/src/test/java/com/etotem/cfc/unit/GuheKbQueryLowSidePatchContractTest.java |
cfc-backend | 8 | GuheKbQueryLowSidePatchContract | cfc-backend/src/test/java/com/etotem/cfc/unit/GuheKbQueryLowSidePatchContractTest.java |
cfc-backend/src/test/java/com/etotem/cfc/unit/GuheKbVersionSenseContractTest.java |
cfc-backend | 11 | GuheKbVersionSenseContract | cfc-backend/src/test/java/com/etotem/cfc/unit/GuheKbVersionSenseContractTest.java |
cfc-backend/src/test/java/com/etotem/cfc/unit/GuheLowSideAggregateContractTest.java |
cfc-backend | 6 | GuheLowSideAggregateContract | cfc-backend/src/test/java/com/etotem/cfc/unit/GuheLowSideAggregateContractTest.java |
cfc-backend/src/test/java/com/etotem/cfc/unit/GuheLowSideNoSupplementContractTest.java |
cfc-backend | 6 | GuheLowSideNoSupplementContract | cfc-backend/src/test/java/com/etotem/cfc/unit/GuheLowSideNoSupplementContractTest.java |
cfc-backend/src/test/java/com/etotem/cfc/unit/GuheLowSideRuleLoadContractTest.java |
cfc-backend | 10 | GuheLowSideRuleLoadContract | cfc-backend/src/test/java/com/etotem/cfc/unit/GuheLowSideRuleLoadContractTest.java |
cfc-backend/src/test/java/com/etotem/cfc/unit/GuheNoPathMapContractTest.java |
cfc-backend | 10 | GuheNoPathMapContract | cfc-backend/src/test/java/com/etotem/cfc/unit/GuheNoPathMapContractTest.java |
cfc-backend/src/test/java/com/etotem/cfc/unit/GuhePageTailCleanContractTest.java |
cfc-backend | 6 | GuhePageTailCleanContract | cfc-backend/src/test/java/com/etotem/cfc/unit/GuhePageTailCleanContractTest.java |
cfc-backend/src/test/java/com/etotem/cfc/unit/GuheReportPersonalAssertContractTest.java |
cfc-backend | 9 | GuheReportPersonalAssertContract | cfc-backend/src/test/java/com/etotem/cfc/unit/GuheReportPersonalAssertContractTest.java |
cfc-backend/src/test/java/com/etotem/cfc/unit/GuheShellGuardContractTest.java |
cfc-backend | 7 | GuheShellGuardContract | cfc-backend/src/test/java/com/etotem/cfc/unit/GuheShellGuardContractTest.java |
cfc-backend/src/test/java/com/etotem/cfc/unit/GuheV2RouteContractTest.java |
cfc-backend | 8 | GuheV2RouteContract | cfc-backend/src/test/java/com/etotem/cfc/unit/GuheV2RouteContractTest.java |
cfc-backend/src/test/java/com/etotem/cfc/unit/GuheVersionSplitContractTest.java |
cfc-backend | 5 | GuheVersionSplitContract | cfc-backend/src/test/java/com/etotem/cfc/unit/GuheVersionSplitContractTest.java |
cfc-backend/src/test/java/com/etotem/cfc/unit/GuideBindingAccessContractTest.java |
cfc-backend | 17 | GuideBindingAccessContract | cfc-backend/src/test/java/com/etotem/cfc/unit/GuideBindingAccessContractTest.java |
cfc-backend/src/test/java/com/etotem/cfc/unit/GuideFamilyAccessGuardTest.java |
cfc-backend | 10 | GuideFamilyAccessGuard | cfc-backend/src/test/java/com/etotem/cfc/unit/GuideFamilyAccessGuardTest.java |
cfc-backend/src/test/java/com/etotem/cfc/unit/GuideFamilyQueryServiceTest.java |
cfc-backend | 4 | GuideFamilyQueryService | cfc-backend/src/test/java/com/etotem/cfc/unit/GuideFamilyQueryServiceTest.java |
cfc-backend/src/test/java/com/etotem/cfc/unit/GuideFamilyServiceBindTest.java |
cfc-backend | 3 | GuideFamilyServiceBind | cfc-backend/src/test/java/com/etotem/cfc/unit/GuideFamilyServiceBindTest.java |
cfc-backend/src/test/java/com/etotem/cfc/unit/GuidePlanReviewControllerAuthTest.java |
cfc-backend | 6 | GuidePlanReviewControllerAuth | cfc-backend/src/test/java/com/etotem/cfc/unit/GuidePlanReviewControllerAuthTest.java |
cfc-backend/src/test/java/com/etotem/cfc/unit/HealthPlanDeleteCascadeTest.java |
cfc-backend | 6 | HealthPlanDeleteCascade | cfc-backend/src/test/java/com/etotem/cfc/unit/HealthPlanDeleteCascadeTest.java |
cfc-backend/src/test/java/com/etotem/cfc/unit/HealthPlanLazyBackfillTest.java |
cfc-backend | 5 | HealthPlanLazyBackfill | cfc-backend/src/test/java/com/etotem/cfc/unit/HealthPlanLazyBackfillTest.java |
cfc-backend/src/test/java/com/etotem/cfc/unit/HealthPlanReviewGuardTest.java |
cfc-backend | 10 | HealthPlanReviewGuard | cfc-backend/src/test/java/com/etotem/cfc/unit/HealthPlanReviewGuardTest.java |
cfc-backend/src/test/java/com/etotem/cfc/unit/HealthReportAuditContractTest.java |
cfc-backend | 8 | HealthReportAuditContract | cfc-backend/src/test/java/com/etotem/cfc/unit/HealthReportAuditContractTest.java |
cfc-backend/src/test/java/com/etotem/cfc/unit/KnowledgeBaseBackfillTest.java |
cfc-backend | 9 | KnowledgeBaseBackfill | cfc-backend/src/test/java/com/etotem/cfc/unit/KnowledgeBaseBackfillTest.java |
cfc-backend/src/test/java/com/etotem/cfc/unit/LegacyDimensionCallFilterTest.java |
cfc-backend | 6 | LegacyDimensionCallFilter | cfc-backend/src/test/java/com/etotem/cfc/unit/LegacyDimensionCallFilterTest.java |
cfc-backend/src/test/java/com/etotem/cfc/unit/LegacyDimensionCallLogServiceTest.java |
cfc-backend | 7 | LegacyDimensionCallLogService | cfc-backend/src/test/java/com/etotem/cfc/unit/LegacyDimensionCallLogServiceTest.java |
cfc-backend/src/test/java/com/etotem/cfc/unit/ManualDimensionScoreContractTest.java |
cfc-backend | 13 | ManualDimensionScoreContract | cfc-backend/src/test/java/com/etotem/cfc/unit/ManualDimensionScoreContractTest.java |
cfc-backend/src/test/java/com/etotem/cfc/unit/MemberPriceResolverTest.java |
cfc-backend | 6 | MemberPriceResolver | cfc-backend/src/test/java/com/etotem/cfc/unit/MemberPriceResolverTest.java |
cfc-backend/src/test/java/com/etotem/cfc/unit/MembershipRenewScP60ScP80ContractTest.java |
cfc-backend | 9 | MembershipRenewScP60ScP80Contract | cfc-backend/src/test/java/com/etotem/cfc/unit/MembershipRenewScP60ScP80ContractTest.java |
cfc-backend/src/test/java/com/etotem/cfc/unit/MembershipViewScP59ContractTest.java |
cfc-backend | 6 | MembershipViewScP59Contract | cfc-backend/src/test/java/com/etotem/cfc/unit/MembershipViewScP59ContractTest.java |
cfc-backend/src/test/java/com/etotem/cfc/unit/OrderCreatePayShipConfirmScX07ContractTest.java |
cfc-backend | 14 | OrderCreatePayShipConfirmScX07Contract | cfc-backend/src/test/java/com/etotem/cfc/unit/OrderCreatePayShipConfirmScX07ContractTest.java |
cfc-backend/src/test/java/com/etotem/cfc/unit/OrderRefundScP56ScA12ContractTest.java |
cfc-backend | 11 | OrderRefundScP56ScA12Contract | cfc-backend/src/test/java/com/etotem/cfc/unit/OrderRefundScP56ScA12ContractTest.java |
cfc-backend/src/test/java/com/etotem/cfc/unit/PersonalLayerDualAssertionTest.java |
cfc-backend | 13 | PersonalLayerDualAssertion | cfc-backend/src/test/java/com/etotem/cfc/unit/PersonalLayerDualAssertionTest.java |
cfc-backend/src/test/java/com/etotem/cfc/unit/PlanActivationExecutionContractTest.java |
cfc-backend | 14 | PlanActivationExecutionContract | cfc-backend/src/test/java/com/etotem/cfc/unit/PlanActivationExecutionContractTest.java |
cfc-backend/src/test/java/com/etotem/cfc/unit/PlanLifecycleParentContractTest.java |
cfc-backend | 38 | PlanLifecycleParentContract | cfc-backend/src/test/java/com/etotem/cfc/unit/PlanLifecycleParentContractTest.java |
cfc-backend/src/test/java/com/etotem/cfc/unit/PlanReviewTeacherContractTest.java |
cfc-backend | 19 | PlanReviewTeacherContract | cfc-backend/src/test/java/com/etotem/cfc/unit/PlanReviewTeacherContractTest.java |
cfc-backend/src/test/java/com/etotem/cfc/unit/PointsLedgerScP15ContractTest.java |
cfc-backend | 8 | PointsLedgerScP15Contract | cfc-backend/src/test/java/com/etotem/cfc/unit/PointsLedgerScP15ContractTest.java |
cfc-backend/src/test/java/com/etotem/cfc/unit/ProductBrowseScP52ScG05ContractTest.java |
cfc-backend | 6 | ProductBrowseScP52ScG05Contract | cfc-backend/src/test/java/com/etotem/cfc/unit/ProductBrowseScP52ScG05ContractTest.java |
cfc-backend/src/test/java/com/etotem/cfc/unit/ProductDTOMappingTest.java |
cfc-backend | 3 | ProductDTOMapping | cfc-backend/src/test/java/com/etotem/cfc/unit/ProductDTOMappingTest.java |
cfc-backend/src/test/java/com/etotem/cfc/unit/ProductDetailScP53ContractTest.java |
cfc-backend | 7 | ProductDetailScP53Contract | cfc-backend/src/test/java/com/etotem/cfc/unit/ProductDetailScP53ContractTest.java |
cfc-backend/src/test/java/com/etotem/cfc/unit/ProductListNutritionTagFilterTest.java |
cfc-backend | 2 | ProductListNutritionTagFilter | cfc-backend/src/test/java/com/etotem/cfc/unit/ProductListNutritionTagFilterTest.java |
cfc-backend/src/test/java/com/etotem/cfc/unit/ProductUpdateClearTest.java |
cfc-backend | 5 | ProductUpdateClear | cfc-backend/src/test/java/com/etotem/cfc/unit/ProductUpdateClearTest.java |
cfc-backend/src/test/java/com/etotem/cfc/unit/RecommendationNutritionTagTest.java |
cfc-backend | 1 | RecommendationNutritionTag | cfc-backend/src/test/java/com/etotem/cfc/unit/RecommendationNutritionTagTest.java |
cfc-backend/src/test/java/com/etotem/cfc/unit/RepeatTaskGeneratorPassThroughTest.java |
cfc-backend | 3 | RepeatTaskGeneratorPassThrough | cfc-backend/src/test/java/com/etotem/cfc/unit/RepeatTaskGeneratorPassThroughTest.java |
cfc-backend/src/test/java/com/etotem/cfc/unit/ReportConfirmRefreshFiveDimContractTest.java |
cfc-backend | 3 | ReportConfirmRefreshFiveDimContract | cfc-backend/src/test/java/com/etotem/cfc/unit/ReportConfirmRefreshFiveDimContractTest.java |
cfc-backend/src/test/java/com/etotem/cfc/unit/ReportDietRecommendContractTest.java |
cfc-backend | 8 | ReportDietRecommendContract | cfc-backend/src/test/java/com/etotem/cfc/unit/ReportDietRecommendContractTest.java |
cfc-backend/src/test/java/com/etotem/cfc/unit/ReportParserAdminContractTest.java |
cfc-backend | 5 | ReportParserAdminContract | cfc-backend/src/test/java/com/etotem/cfc/unit/ReportParserAdminContractTest.java |
cfc-backend/src/test/java/com/etotem/cfc/unit/ReportParserProviderConnectContractTest.java |
cfc-backend | 3 | ReportParserProviderConnectContract | cfc-backend/src/test/java/com/etotem/cfc/unit/ReportParserProviderConnectContractTest.java |
cfc-backend/src/test/java/com/etotem/cfc/unit/ReportShareGrantContractTest.java |
cfc-backend | 11 | ReportShareGrantContract | cfc-backend/src/test/java/com/etotem/cfc/unit/ReportShareGrantContractTest.java |
cfc-backend/src/test/java/com/etotem/cfc/unit/ReportTransferContractTest.java |
cfc-backend | 11 | ReportTransferContract | cfc-backend/src/test/java/com/etotem/cfc/unit/ReportTransferContractTest.java |
cfc-backend/src/test/java/com/etotem/cfc/unit/ReportViewPermissionContractTest.java |
cfc-backend | 11 | ReportViewPermissionContract | cfc-backend/src/test/java/com/etotem/cfc/unit/ReportViewPermissionContractTest.java |
cfc-backend/src/test/java/com/etotem/cfc/unit/ReviewCenterSummaryTest.java |
cfc-backend | 3 | ReviewCenterSummary | cfc-backend/src/test/java/com/etotem/cfc/unit/ReviewCenterSummaryTest.java |
cfc-backend/src/test/java/com/etotem/cfc/unit/RolesUtilTest.java |
cfc-backend | 7 | RolesUtil | cfc-backend/src/test/java/com/etotem/cfc/unit/RolesUtilTest.java |
cfc-backend/src/test/java/com/etotem/cfc/unit/ServiceRoleApproveTest.java |
cfc-backend | 6 | ServiceRoleApprove | cfc-backend/src/test/java/com/etotem/cfc/unit/ServiceRoleApproveTest.java |
cfc-backend/src/test/java/com/etotem/cfc/unit/ServiceRoleFilterTest.java |
cfc-backend | 3 | ServiceRoleFilter | cfc-backend/src/test/java/com/etotem/cfc/unit/ServiceRoleFilterTest.java |
cfc-backend/src/test/java/com/etotem/cfc/unit/TaskCreateScP10ContractTest.java |
cfc-backend | 14 | TaskCreateScP10Contract | cfc-backend/src/test/java/com/etotem/cfc/unit/TaskCreateScP10ContractTest.java |
cfc-backend/src/test/java/com/etotem/cfc/unit/TaskFrequencyScP12ContractTest.java |
cfc-backend | 4 | TaskFrequencyScP12Contract | cfc-backend/src/test/java/com/etotem/cfc/unit/TaskFrequencyScP12ContractTest.java |
cfc-backend/src/test/java/com/etotem/cfc/unit/TaskPlanServiceTest.java |
cfc-backend | 4 | TaskPlanService | cfc-backend/src/test/java/com/etotem/cfc/unit/TaskPlanServiceTest.java |
cfc-backend/src/test/java/com/etotem/cfc/unit/TaskProgressUpdateTest.java |
cfc-backend | 3 | TaskProgressUpdate | cfc-backend/src/test/java/com/etotem/cfc/unit/TaskProgressUpdateTest.java |
cfc-backend/src/test/java/com/etotem/cfc/unit/TaskReviewScT06ContractTest.java |
cfc-backend | 6 | TaskReviewScT06Contract | cfc-backend/src/test/java/com/etotem/cfc/unit/TaskReviewScT06ContractTest.java |
cfc-backend/src/test/java/com/etotem/cfc/unit/TaskTemplatePackageContractTest.java |
cfc-backend | 13 | TaskTemplatePackageContract | cfc-backend/src/test/java/com/etotem/cfc/unit/TaskTemplatePackageContractTest.java |
cfc-backend/src/test/java/com/etotem/cfc/unit/TeamProfitAdminManageContractTest.java |
cfc-backend | 20 | TeamProfitAdminManageContract | cfc-backend/src/test/java/com/etotem/cfc/unit/TeamProfitAdminManageContractTest.java |
cfc-backend/src/test/java/com/etotem/cfc/unit/TeamProfitCronContractTest.java |
cfc-backend | 22 | TeamProfitCronContract | cfc-backend/src/test/java/com/etotem/cfc/unit/TeamProfitCronContractTest.java |
cfc-backend/src/test/java/com/etotem/cfc/unit/TeamProfitHookContractTest.java |
cfc-backend | 7 | TeamProfitHookContract | cfc-backend/src/test/java/com/etotem/cfc/unit/TeamProfitHookContractTest.java |
cfc-backend/src/test/java/com/etotem/cfc/unit/TeamProfitPipelineContractTest.java |
cfc-backend | 8 | TeamProfitPipelineContract | cfc-backend/src/test/java/com/etotem/cfc/unit/TeamProfitPipelineContractTest.java |
cfc-backend/src/test/java/com/etotem/cfc/unit/TeamStarDigestContractTest.java |
cfc-backend | 14 | TeamStarDigestContract | cfc-backend/src/test/java/com/etotem/cfc/unit/TeamStarDigestContractTest.java |
cfc-backend/src/test/java/com/etotem/cfc/unit/TeamStarMultiplierContractTest.java |
cfc-backend | 13 | TeamStarMultiplierContract | cfc-backend/src/test/java/com/etotem/cfc/unit/TeamStarMultiplierContractTest.java |
cfc-backend/src/test/java/com/etotem/cfc/unit/TeamStarMyViewContractTest.java |
cfc-backend | 24 | TeamStarMyViewContract | cfc-backend/src/test/java/com/etotem/cfc/unit/TeamStarMyViewContractTest.java |
cfc-backend/src/test/java/com/etotem/cfc/unit/TeamUserPortalContractTest.java |
cfc-backend | 4 | TeamUserPortalContract | cfc-backend/src/test/java/com/etotem/cfc/unit/TeamUserPortalContractTest.java |
cfc-backend/src/test/java/com/etotem/cfc/unit/TianpanGuideContractTest.java |
cfc-backend | 10 | TianpanGuideContract | cfc-backend/src/test/java/com/etotem/cfc/unit/TianpanGuideContractTest.java |
cfc-backend/src/test/java/com/etotem/cfc/unit/UnifiedKnowledgeBaseLowSidePatchTest.java |
cfc-backend | 4 | UnifiedKnowledgeBaseLowSidePatch | cfc-backend/src/test/java/com/etotem/cfc/unit/UnifiedKnowledgeBaseLowSidePatchTest.java |
cfc-backend/src/test/java/com/etotem/cfc/unit/UserServiceMaskChildSensitiveFieldsTest.java |
cfc-backend | 5 | UserServiceMaskChildSensitiveFields | cfc-backend/src/test/java/com/etotem/cfc/unit/UserServiceMaskChildSensitiveFieldsTest.java |
cfc-backend/src/test/java/com/etotem/cfc/unit/VendorOrderShipConfirmScS03ScS04ContractTest.java |
cfc-backend | 9 | VendorOrderShipConfirmScS03ScS04Contract | cfc-backend/src/test/java/com/etotem/cfc/unit/VendorOrderShipConfirmScS03ScS04ContractTest.java |
cfc-backend/src/test/java/com/etotem/cfc/unit/VendorProductManageScS02ContractTest.java |
cfc-backend | 9 | VendorProductManageScS02Contract | cfc-backend/src/test/java/com/etotem/cfc/unit/VendorProductManageScS02ContractTest.java |
cfc-backend/src/test/java/com/etotem/cfc/unit/WishFlowScP13ContractTest.java |
cfc-backend | 15 | WishFlowScP13Contract | cfc-backend/src/test/java/com/etotem/cfc/unit/WishFlowScP13ContractTest.java |
cfc-backend/src/test/java/com/etotem/cfc/util/CfFormulaEvaluatorTest.java |
cfc-backend | 8 | CfFormulaEvaluator | cfc-backend/src/test/java/com/etotem/cfc/util/CfFormulaEvaluatorTest.java |
cfc-backend/src/test/java/com/etotem/cfc/util/SpearmanUtilTest.java |
cfc-backend | 6 | SpearmanUtil | cfc-backend/src/test/java/com/etotem/cfc/util/SpearmanUtilTest.java |
cfc-backend/src/test/java/com/etotem/cfc/util/UserUtilTest.java |
cfc-backend | 6 | UserUtil | cfc-backend/src/test/java/com/etotem/cfc/util/UserUtilTest.java |
tests/user-scenarios/*.md,上游输入)| 文件 | 来源 |
|---|---|
tests/user-scenarios/01-guest.md |
tests/user-scenarios/01-guest.md |
tests/user-scenarios/02-parent.md |
tests/user-scenarios/02-parent.md |
tests/user-scenarios/03-child.md |
tests/user-scenarios/03-child.md |
tests/user-scenarios/04-teacher.md |
tests/user-scenarios/04-teacher.md |
tests/user-scenarios/05-admin.md |
tests/user-scenarios/05-admin.md |
tests/user-scenarios/06-vendor.md |
tests/user-scenarios/06-vendor.md |
tests/user-scenarios/07-five-dimension.md |
tests/user-scenarios/07-five-dimension.md |
tests/user-scenarios/08-butler.md |
tests/user-scenarios/08-butler.md |
tests/user-scenarios/09-human-butler.md |
tests/user-scenarios/09-human-butler.md |
tests/user-scenarios/README.md |
tests/user-scenarios/README.md |
tests/user-scenarios/应用场景总览.md |
tests/user-scenarios/应用场景总览.md |
进度不写回 tests/ 与 cfc-backend/src/test/java 下的原始测试文件,而是落在本地侧车:
// .tdd/test-progress.json(与 config.json 同目录,本地不推送)
{
"schema": "tdd-test-progress/v1",
"sources": [ { "anchor", "source_type", "source_path", "local_id", ...meta }, ... ],
"progress": { "<anchor>": { "status": "pass|fail|executed|blocked|untracked", "at": ISO, "by": "", "note": "" } }
}
anchor = source_path#local_id(如 tests/test-cases/admin.md#TC-A-01)。progress[anchor];原始 .md/.spec.js/.py 一律不动,原项目结构零侵入。test_inventory.py --emit-progress 可(重新)播种 anchors(保留已有 progress)。docs/tdd/test/automation-status.md(团队共享),按 anchor 标注「自动化状态 + 执行状态」;本地侧车 .tdd/test-progress.json 不推送。