SELFCHECK-RESULT-20260827.md 4.8 KB

黑盒自测结果报告(接口级)

  • 日期:2026-08-27
  • 环境:http://cfc.iwintrue.com(DNS → 192.168.16.251,同一台服务器同时承载 dev 库 zxyj @3306
  • 方式:按 BLACKBOX-TEST-PLAN.md 4.x 用例的接口段执行(登录→种子数据→BUG 回归→主链路)
  • 凭据:种子管理员 13800138000 / admin123(DatabaseInitializer 创建)
  • 脚本(可复测):tests/selfcheck-plan-chain.ps1

1. 执行结果汇总

# 用例 接口 状态 证据
E2E-00 管理端密码登录 POST /api/admin-auth/login-by-password ✅ 200 token 正常签发
P0-3 方案生成规则列表 POST /api/admin/plan-rules/list ✅ 200 data=[{id:1, dimension:attention, scoreMin:0, scoreMax:60, templateId:38, priority:1, isActive:true}]
P0-4 报告解析中台类型列表 POST /api/admin/report-parser/types ⚠️ 间歇性 首次 200(records[0] typeId=gut_flora),随后同一请求稳定 500(5 连发 + 4 种 body)
A-03 方案管理列表(admin 全量,不筛家庭) POST /api/guide/plans/family-list ✅ 200 data:[](admin 无家庭不再报 noFamily)
TCH-11 成长计划列表 POST /api/growth/plan/list ❌ HTTP200/业务500 message=服务器内部错误
A-02 全局任务统计 POST /api/admin/tasks/stats ✅ 200 total=7, today=6
A-05 注册重复报告类型(幂等) POST /api/admin/report-parser/types/save ❌ 500 应 400「typeId 已存在」
AAA-16 参数校验:空 body 删知识库 POST /api/admin/knowledge-base/delete ❌ 500 应 400 提示 id 不能为空(BUG-K)
A-11 创建勋章(badgeId 自动生成) POST /api/badges/create ❌ 500 BUG-F 未生效(线上仍因 badge_id NOT NULL 崩溃)
A-12 新增供应商(字段契约映射) POST /api/admin/supplier/save ❌ 500 BUG-G 未生效
BUG-H 已发布活动提交审核 POST /api/admin/activity/submit-review {id:38} ❌ 500 应 400 业务提示(BUG-H 未生效)
BUG-I 查询知识库 POST /api/admin/knowledge-base/get {id:1} ❌ 500 契约未对齐 / 关联表异常
A-14a 新建知识条目(自测数据) POST /api/admin/knowledge-base/save ✅ 200 落库 id=4(BLACKBOX,残留)
A-14b 删除知识条目(自测数据) POST /api/admin/knowledge-base/delete {id:4} ❌ 500 BUG-I 未生效(残留未清理)
A-08 创建文章(防超时回归) POST /api/admin/articles/create ✅ 200 102ms 返回(短文;长文 8000 字场景未复现)

2. 结论

  1. 线上环境未部署包含本轮修复的后端代码。 勋章创建、供应商保存、活动提交审核、知识库查询/删除、空参删除——6 个失败点与任务书 BUG-F/G/H/I/K 的"旧版 500"行为完全一致;growth-plan /list 端点存在(HTTP 200 而非 404)但业务 500,与"部分旧版接口 + 未迁移 DB"特征相符。
  2. 种子/中台数据已在库(规则 id=1、报告类型 gut_flora id=1,createdAt=2026-08-24),但与本轮 DatabaseInitializer 新写的种子同源存疑(时间早于本轮代码),来源需确认(人工录入 or 已部署过某版本)。
  3. 环境存在不稳定/变更迹象report-parser/types 同一 token、同一 body 首次 200、随后稳定 500——测试窗口内线上可能发生过重启/回滚/部署。此类间歇行为需在环境稳定后复测。
  4. 文章创建实测 102ms 快速返回,未复现 10s 超时(短文场景),长文 + 微信检测慢的网络场景需在联网环境再压测。

3. 测试残留数据(在线,可清理)

类型 标识 处理
知识库条目 id=4「BLACKBOX自测知识…」 部署修复后可经 delete 清理
文章 id=96「BLACKBOX自测文章…」 可在运营后台下架/删除

4. 本轮未能覆盖(环境受限)

  • UI 级用例(小程序/管理端页面操作、白屏复现)——需要浏览器环境与登录态。
  • 报告 PDF 上传链路——本机无「募极生物菌群报告」官方样张(仓库仅有 reference JSON)。
  • 方案激活→孩子任务打卡闭环——库内无 generated 方案(family-list 为空)且缺孩子端账号。

5. 行动建议

  1. 将最新后端构建部署到 192.168.16.251(或 cfc.iwintrue.com 上游),重启后运行迁移与种子。
  2. 复跑 tests/selfcheck-plan-chain.ps1,预期:TCH-11 200、A-05 400、A-11/A-12/A-14b/AAA-16 全部 200 或 400 业务提示,仅剩真实环境问题。
  3. 确认 types 接口间歇 500 的原因(部署后复测;若仍有,抓后端日志定位 SQL/空指针)。
  4. 确认规则/报告类型种子数据的来源(人工 or 已部署版本),避免与代码种子重复执行造成双写。