| 项 | 说明 |
|---|---|
| 环境 | MySQL 8 + Redis 7(Podman 容器)、后端 prod profile(8080)、前端 Vite(5173) |
| 数据 | Flyway V1-V9 自动建表 + 种子/确定性演示数据,可重复执行 |
| 测试账号 | admin/admin123(集团)、analyst/analyst123(只读)、store_hz/store123(单店) |
| 策略 | 四层:编译构建 → 接口冒烟 → 模块功能 → 浏览器端到端;AI 链路验证 LLM 真实调用与降级 |
| 编号 | 用例 | 步骤 | 预期 | 结果 |
|---|---|---|---|---|
| SMK-01 | 后端打包 | JDK21 环境执行 mvn package -DskipTests | BUILD SUCCESS,生成 cinepilot-1.0.0.jar | PASS |
| SMK-02 | 前端构建 | npm run build | vite build 完成,dist 产物生成 | PASS |
| SMK-03 | Flyway 迁移 | 启动 prod,观察日志 | 迁移至 v9,无校验错误,演示数据就绪 | PASS |
| SMK-04 | 登录鉴权 | POST /api/auth/login(三账号) | 返回 token 与角色/数据范围;错误密码 401 | PASS |
| 编号 | 模块 | 用例 | 预期 | 结果 |
|---|---|---|---|---|
| TC-01 | 核心管理中心 | GET /api/home/kpis · box-trend · warnings · system-status | 六 KPI、7 日趋势、预警流、系统状态均返回数据 | PASS |
| TC-02 | 票房监控 | overview 三级(nation/region/store)切换 | KPI 与趋势随维度联动;门店无聚合数据时兜底生成 | PASS |
| TC-03 | 票房监控 | film-rank 近 7 日 | 榜单非空(空数据自动兜底);Top 上限 10 | PASS |
| TC-04 | 票房监控 | 经营日报生成→订阅→推送 | 日报落库;订阅可增;推送触发通知记录 | PASS |
| TC-05 | 排片 | 计划 confirm → dispatch 状态流转 | 状态按 待确认→已确认→已下发 推进 | PASS |
| TC-06 | 排片 | predictions / backtests / suggestions | 预测含 MAE 质量指标;建议含采纳动作 | PASS |
| TC-07 | CDP | rfm-distribution / coupons issue | 五层分布返回;发券生成券实例 | PASS |
| TC-08 | 定价 | adjust 调价 + compliance 校验 | 超限调价被拦截;审计日志写入 | PASS |
| TC-09 | 定价 | ticket-source 约束 CRUD + check | 规则增删改生效;check 返回合规结论 | PASS |
| TC-10 | 预警 | 规则 CRUD → scan → inbox | 手动扫描生成事件入收件箱;状态可流转 | PASS |
| TC-11 | 租户 | list / quota / renew / expiring | 租户生命周期数据正确;续费延长到期日 | PASS |
| 编号 | 用例 | 步骤 | 预期 | 结果 |
|---|---|---|---|---|
| AI-01 | 模型生命周期 | 注册→训练→评估→门禁→上线→回退 | 状态机正确;未达标不可上线 | PASS |
| AI-02 | 大模型通道 | 列表展示 DeepSeek 唯一可用;场景路由指向该通道;test 连通 | qwen/doubao/local 停用;路由 5 场景指向 DeepSeek | PASS |
| AI-03 | RAG 问答 | POST /api/ai/ask 「上座率怎么计算」 | type=rag,LLM 组织回答,引用来源,置信度>70 | PASS |
| AI-04 | NL2SQL | 「近7日全国票房」「华东今日人次」 | 返回口径+数据+趋势图;区域无当日数据自动回退 | PASS |
| AI-05 | NL 生成应用 | 「生成华东区域票房和影片榜单看板」 | source=llm,组件布局 JSON 合法,指标/维度识别正确 | PASS |
| AI-06 | 应用工坊渲染 | render 六类组件(kpi/trend/bar/region/compare/pie) | 各组件返回真实数据;预览访问数+1 | PASS |
| AI-07 | 营销策略生成 | goalType=wake_sleeping 生成策略 | source=llm,含人群圈选/活动形式/预算/依据 | PASS |
| AI-08 | 营销闭环 | 创建活动→生成内容→审核→一键下发→录入效果→自优化 | 内容生成 2 条;下发回执成功;效果入库;权重重算 | PASS |
| AI-09 | LLM 降级 | 断开 LLM 端点后重跑 AI-05/07 | 自动回退规则链,接口仍成功返回 | PASS(机制验证) |
| 编号 | 用例 | 步骤 | 预期 | 结果 |
|---|---|---|---|---|
| OP-01 | 应用生命周期 | 创建→审核通过→启用 | 生成 AK/SK;状态流转正确 | PASS |
| OP-02 | 网关鉴权 | X-App-Key+Secret 调用 overview | code=0 返回真实票房数据 | PASS |
| OP-03 | 错误密钥 | 错误 Secret 调用 | code=401 密钥错误 | PASS |
| OP-04 | 未启用应用 | 待审核应用调用 | code=403 应用未启用或已禁用 | PASS |
| OP-05 | scope 越权 | 无 scheduling 权限应用调用排片接口 | code=403 scope not authorized | PASS |
| OP-06 | QPS 限流 | 连续超频调用 | code=429 限流 | PASS |
| OP-07 | 沙箱 | /sandbox/warnings 免密钥调用 | code=0 返回演示数据 | PASS |
| OP-08 | 计量审计 | 调用后查看 dashboard 与 logs | 调用数/调用点递增;日志含 IP/延迟/成败 | PASS |
| OP-09 | 密钥轮换 | rotate-secret 后旧密钥调用 | 新密钥生效,旧密钥失效 | PASS |
| 编号 | 场景 | 关键步骤 | 结果 |
|---|---|---|---|
| E2E-01 | 登录与品牌复刻 | 打开 /login,宣传面板 1:1 展示;登录后进入驾驶舱 | PASS |
| E2E-02 | 经营大屏 | /bigscreen 全屏交互与数据刷新 | PASS |
| E2E-03 | 票房筛选 | 区域→门店级联筛选 + 重置恢复全国 | PASS |
| E2E-04 | AI 智能问答 | AI 中台问答页提问并渲染趋势图 | PASS |
| E2E-05 | 应用工坊 | NL 生成→预览弹窗图表渲染→保存→发布→列表预览 | PASS |
| E2E-06 | 营销 Agent | 浏览器内生成策略→创建活动→生成内容→审核→下发 | PASS |
| E2E-07 | 开放平台 | 看板 KPI、API 目录、沙箱试调返回 JSON | PASS |