执行档:review 档(内网 cfc.iwintrue.com 已授权,未联网公网) 主理人:陆谨(软件测试专家团 · 测试负责人闭环) 被审查对象:浠艾福 XAF(d:/cfc,多模块:cfc-backend / cfc-web / cfc-frontend / cfc-langgraph / dan/danshop) 本轮 HEAD:
935aefea1(R179 汇报提交 @ 0055,与本运行零新提交)
| 模块 | 技术栈 | 本轮动作 | 数据来源 |
|---|---|---|---|
| cfc-web | Vue2 + Jest 29 | ✅ 实跑 npx jest --ci |
本小时真实执行 |
| cfc-frontend | uni-app Vue2 + Jest 26 | ✅ 实跑(排除 P-9 公网 api/config.test.js) | 本小时真实执行 |
| cfc-backend | Spring Boot 2.7 + Java8 + Maven 3.6.1 | ✅ mvn -o test-compile 实跑;全量 mvn test 引用基线 |
编译实跑 + 基线引用 |
| cfc-langgraph | Python FastAPI | ⛔ 降级(需 251 节点 + AI 凭据) | 基线引用 |
| 内网 E2E | Playwright 1.63.0 (chromium) | ✅ 无登录冒烟 /admin+/frontend 实跑 |
本小时真实执行 |
| 安全/性能/依赖漏洞 | SAST/DAST/SCA/压测 | ⛔ 降级(execute 档,需公网授权) | 测试设计 + 缺口诊断 |
约束遵守:未访问外部公网;未安装依赖(Maven 走离线 -o);未修改/提交/推送生产源码或被审查代码;Jest 测试为 axios-mock-adapter mock API,不据其断言真实服务端行为;公网外联用例 api.test.js/config.test.js 已显式排除以守「不访问公网」约束。
| 套件 | 总数 | 通过 | 失败 | 跳过 | 结论 |
|---|---|---|---|---|---|
| cfc-web Jest | 116 | 116 | 0 | 0 | ✅ 全绿(零漂移 vs R179) |
| cfc-frontend Jest(排除 P-9 公网套件) | 474 | 459 | 3 | 12 | ⚠️ 3 红 = 已知 TDD 预期红(非回归) |
cfc-backend mvn -o test-compile |
— | 375 测试源码编译通过 | 0 | — | ✅ BUILD SUCCESS(GREEN,1:05 min) |
| 内网 E2E 无登录冒烟 | 2 | 2 | 0 | — | ✅ /admin 200 + /frontend 200 均渲染 |
cfc-backend 全量 mvn test+JaCoCo |
3103* | 3059* | 40* | — | ⛔ 引用 R178 基线(MySQL3306 不可达,未重跑,未实测) |
| cfc-langgraph 9000 | 51* | 49* | 2* | — | ⛔ 引用 R179 基线(2 红 = 401 环境型,需 251 节点+AI 凭据) |
* 标注 * 为基线引用值,非本轮重跑实测。
cfc-frontend 3 个失败定位(均为预期 RED,非代码回归):
signature.consignee.test.js:172 — 期望模板含 <hand-signature(收件人手签名契约,实现未交付)growthHistory.dayGroupView.test.js:287 — RED-A7 无有效业务日期记录被跳过(期望 6 实得 7,契约新增待实现)该 3 红与 R159/R171/R179 基线逐字段一致,红例差集为空 → 零新增回归。
| 模块 | 语句 | 分支 | 函数 | 行 | 门禁(≥20%) | 说明 |
|---|---|---|---|---|---|---|
| cfc-web | ~10.1%* | ~6.1%* | ~7.5%* | ~10.0%* | ❌ 未达标 | 引用 R171/R179 基线(本轮未实时采集,规避共享 runner 超时);mock API 不反映真实服务端 |
| cfc-frontend | 53.6%* | — | — | — | ⚠️ 部分达标 | 引用 R155 基线(排除公网套件后本次 474 例未带 coverage) |
| cfc-backend | — | — | — | — | ❌ JaCoCo N/A | 全量测试未重跑,JaCoCo 报告未生成 |
* 引用值,非本轮实测。
cfc-frontend api.test.js/config.test.js 对公网 cfc.etotem.com.cn 发真实 POST(离线约束缺口),本轮已显式排除。AdminReferralController/TreeService 零覆盖,且未同步 SRS。docs/tdd/SRS.md、docs/需求分析/、docs/superpowers/specs/、docs/superpowers/api/API_REFERENCE.md 做 git log 8916ced73..HEAD + find -newermt "2026-11-12 21:18" 双重校验 → 零命中。cfc-frontend 的 api.test.js/config.test.js 在离线约束下仍向公网 cfc.etotem.com.cn 发起真实 HTTP 请求,违反「不访问外部公网」铁律。cfc-frontend/src/__tests__/api.test.js、cfc-frontend/src/__tests__/config.test.js(用例内 axios 直连公网域名,无离线开关)。CFC_OFFLINE 环境变量守卫,命中时以 axios-mock-adapter 拦截公网请求;或将两文件并入 testPathIgnorePatterns 直至离线化完成。CFC_OFFLINE=1 重跑 Jest,断言 network request to cfc.etotem.com.cn 次数为 0;通过标准 = 0 外联且 116/116(web)+474(fe)全绿。cfc-backend 集成测试依赖本地 MySQL 3306(当前 CLOSED);pom.xml 未稳定挂 JaCoCo agent。mvn test 收集真红;pom.xml 配置 jacoco-maven-plugin 输出 target/site/jacoco/index.html。cfc-web/src/**/__tests__/* 仅覆盖少量组件/API 封装,业务视图与 store 大片未测。tests/e2e 与既有 __tests__ 补齐关键视图(家庭/测评/健康报告)渲染与交互用例;引入 jest --coverageThreshold 强制门禁。--coverage 后四项指标均 ≥20% 视为通过。AdminReferralController + TreeService + 前端 Users.vue 团队按钮自 feat(admin) 合入后无测试资产,且未同步 SRS。cfc-backend/.../controller/AdminReferralController.java、cfc-backend/.../service/TreeService.java;前端 cfc-web/src/.../Users.vue。/api/admin/referral/{summary,members,tree})+ 前端组件渲染测试;同步 SRS 需求条目。MACHINE_JSON_PATH 注入的登录凭据(当前未配置)。| 项 | 为何需授权 | 测试设计(降级产出) |
|---|---|---|
依赖漏洞扫描(SCA,如 mvn dependency-check / npm audit) |
execute 档,需联网下载漏洞库/访问公网 | 设计:在 CI 中离线缓存 NVD 镜像后跑 dependency-check:check;门禁 = 0 High/Critical。当前 未授权未执行。 |
| 性能压测(如 JMeter/Locust 打 cfc-backend) | execute 档,会打到目标环境(公网/生产) | 设计:在预发内网构建压测脚本,指标 = P95<500ms、错误率<1%;当前 未授权未执行。 |
DAST/渗透(如 ZAP 扫 /admin /frontend) |
execute 档,需公网/外部服务 | 设计:内网授权范围内对 /api/** 跑被动/主动扫描,重点鉴权绕过与注入;当前 未授权未执行。 |
后端全量 mvn test+JaCoCo 连库重跑 |
MySQL 3306 当前不可达(环境),且全量 ~60min > 单小时预算 | 设计:夜间窗口拉起 MySQL 后跑全量 + JaCoCo,固化门禁;当前 降级引用 R178 基线(未实测)。 |
| LangGraph 9000 复验 | 需 251 节点 + AI 凭据(联网) | 设计:配齐凭据后跑 cfc-langgraph/tests 全量,分离 401/429 环境红与代码红;当前 降级引用基线。 |
结论:⛔ 有条件通过(承袭 R179 稳态,零漂移)
可执行维度(本小时真实实测)全部绿:cfc-web 116/116、后端 test-compile GREEN、内网 E2E 2/2 可达渲染、cfc-frontend 3 红均为已知预期 RED(非回归)。但下列硬门禁未达成,故整体为「有条件通过」而非「通过」:
复评条件(满足后转「通过」):
mvn test 真红 = 0 且 JaCoCo 行/分支 ≥ 80%(G7);本产物状态:报告文件本地生成,未提交未推送;仓库零写入(未改生产源码/测试、未编写新用例);遵守「不访问公网 / 不提交推送 / 不输出敏感信息」全部约束。
执行明细日志见本运行各套件 stdout;临时 E2E 探针脚本已清理。下轮(R181)将于整点触发,届时若 SRS/需求/接口文档出现变更将自动开启测试用例编写闸门。