automation-run-2026-11-12-R173.md 6.2 KB

测试闭环 R173 — 2026-11-12 20:10 (GMT+8)

执行档:review(内网 cfc.iwintrue.com 已授权;不访问外部公网) 主理人:软件测试专家团·陆谨(测试负责人)| 被审查对象:d:/cfc(浠艾福 XAF) 本轮回合 HEAD 45c00d5c8(pull --rebase 后;窗口仅 cfc-web 构建元数据);上次本对象记忆轮 = R172(18:34)

1. 历史审查记录(记忆召回)

  • 非首次审查:自动化记忆库 automations/6255181e…/memory.md 连续记录 R123→R170 多轮闭环;R171/R172 由并行实例提交(本轮已读 R172 报告与记忆尾部)。
  • 直接前驱 R172(18:20,f354f5091)结论:不通过(承袭);langgraph 45/51;后端采信 R171(3057 例,未实跑);新增 5 契约类 46 例(30 绿 / 16 预期 RED)。
  • 本次对照:为避免「连续 2 轮采信」风险,本轮后端从干净 HEAD 全量实跑(3103 例 / 51:52);存量红逐类逐例零漂移(第 19 次);langgraph 45→46;新增 3 项 blocker(B-173-1/2/3)。

2. 执行范围

模块 命令(离线/内网) 状态
cfc-backend 全量 cd cfc-backend && JAVA_HOME=/d/jdk1.8.0_25 mvn -o -B clean test ✅ 实测 3103 例(3060 过 / 39 红 / 4 跳,51:52)
cfc-web npx jest --ci ✅ 实测 116/116(36.5s)
cfc-frontend npx jest --ci ✅ 实测 609/3/12(47.4s)
根级黑盒 cd tests && npx jest --ci ✅ 实测 7/16(9082 未起,B-36 第 59 轮,8.8s)
浏览器 E2E(189 admin + 本机 fe/shop/health/dx) Playwright config live/health ✅ 实测 28/28 + dx 2 skip
线上 API Playwright config api(点名 4 文件) ✅ 实测 32 例(25 过 / 7 跳 / 0 红,20.4s)
LangGraph@251 251 POST /api/shell → .venv/bin/python -m pytest ✅ 实测 46/51(5 红全 429/401 环境,129.33s)
安全/性能/依赖漏洞(公网) SAST/DAST/SCA/压测 ⛔ 未授权未执行

3. 本轮实测数据

套件 总数 通过 失败 跳过 说明
后端 JUnit 3103 3060 39(33F+6E) 4 368 类 / 368 XML / 0 dump;存量 18(11 类)零漂移 + 未入库 GrowthPublic 5E + 新契约预期 RED 16
cfc-web Jest 116 116 0 0 全绿,36.5s
cfc-frontend Jest 624 609 3 12 3 全预期 RED(S-cfc-132/133),47.4s
langgraph@251 51 46 5 0 5 红全 AgnesAI 429/401(B-142-2),129.33s
浏览器 E2E 30 28 0 2 189 admin 5(EXIT=0)/ 本机 fe 6、shop 4、health 13;dx 2 skip
线上 API 32 25 0 7 smoke+security 15、perf-compat 4/3skip、trace 6/4skip
根级黑盒 23 7 16 0 9082 未监听(B-36)
合计 3979 3891 63 25 通过率 97.79%(剔 skip 98.41%)

4. 后端红例归因(39)

层 例数 类 说明
存量装置/契约 18 EnergySystemFlow 6F / DimensionRegistryMap 3F / GuideModule 1E / OrchestrationEngine 1F / OrchestrationIntegration 1F / MembershipPaySwitch 1F / PaymentServiceORD 1F / WechatLogin 1F / WechatLoginContract 1F / TaskReviewScP11 1F / TeamProfitCron 1F 与 R171/R172 逐类逐例一致(第 19 次零漂移)
未入库测试类 5E GrowthPublicEndpointMappingTest B-162-1(文件 ?? 未跟踪)
新契约预期 RED 16 MembershipPlanPurchase 7 / ShopOrderQueryRefund 4 / SupplierOrderFulfill 5 S-cfc-168/166/169 待研发实现

5. G11 CI 清单双向差集(本轮实测)

  • CI 清单 33 类 vs 实测红类 15 类
  • 漏拦 8 类:GrowthPublicEndpointMappingTest、MembershipPlanPurchaseContractTest、ShopOrderQueryRefundContractTest、SupplierOrderFulfillContractTest、TaskReviewScP11ContractTest、TeamProfitCronContractTest、UserServiceWechatLoginContractTest、UserServiceWechatLoginTest
  • 陈旧已绿 26 类(AuthControllerTest、ProductControllerTest、UserServiceFamilyNameLinkTest 等)
  • 结论:backend-blocking-junit 在干净 HEAD 上必红,且覆盖被人为缩小 → G11 ❌(第 9 轮)

6. 线上探针

探针 结果
匿名 POST 6 端点(mind/energy/health-plan/huawei/xiaomi/admin/families/overview) 6/6 = 401(G8 ✅,B-142-1 维持销号)
/admin /frontend / 302 / 302 / 404
dx 两端点 404 / 404(B-DX-1 第 24 轮)
节点端口 251:4096 200 · 189:4090 200 · 204:4090 000(B-95 第 33 轮)
251 langgraph live /health 200(8.9ms)· /api/v1/analyze 000/150s · /api/v1/chat 000/150s → LLM 链路挂死(B-90 反转延续)

7. 新发现(本轮)

编号 级别 内容
B-173-1 P2 测试基础设施 Playwright 启动即被 safe-delete 守卫拦截(SAFE_DELETE_BULK_GUARD_ERROR: state lock timeout);shop-api/dx-bridge/api 三组首次启动均在 Running N tests 之前中断,人工 mv 旧产物目录后恢复
B-173-2 P1 度量/CI playwright.config.api.js 不带文件参数收集 990 例(含 e2e/api/generated/**),点名 4 文件才 32 例 → 门禁口径不可复现 + 线上近千请求
B-173-3 P2 性能 后端全量 51:52(R171 45m);慢类 GrowthPublic 237s / FamilyNameLink 168s / Activity 104s / ArticleCategory 99s / GuideRolePermission 94s / Stats 91s

8. SRS 闸门

  • specs 201 份 / test-cases 16 份 / user-scenarios 11 份 / API_REFERENCE:窗口 f354f5091..45c00d5c8 零命中(find -newermt + git diff --name-only 双证)
  • → 不新增/不更新用例(G12 ✅)
  • 度量:场景 215 / 映射 TC 155(72.1%)/ TC 表行 861 / 异常流 502(58.3%)/ 锚点 115(13.4%,官方口径)/ 资产 545

9. 本轮方法论(已写入报告 §9)

  1. 251 派发日志路径禁止走本地 env 注入(MSYS 会把 /tmp/x 转成 C:/Users/...)→ 写在传入 command 字符串里。
  2. 「套件跑不起来」分层:环境 → 工具链 → 用例;判据是日志里有没有 Running N tests。
  3. 同一 config 带/不带参数可能是两个口径(990 vs 32)。
  4. 慢 ≠ 卡死:先看 Time elapsed 分布与 scheduler 线程数。
  5. 未跟踪测试文件必须在报告里显式声明(HEAD 纯度 371 / 执行 374)。