diff --git a/docs/evidence/2026-06-10-prestore-test-results.md b/docs/evidence/2026-06-10-prestore-test-results.md new file mode 100644 index 0000000..f43adcc --- /dev/null +++ b/docs/evidence/2026-06-10-prestore-test-results.md @@ -0,0 +1,59 @@ +# 预存余额功能 — 测试与部署结果 + +> 2026-06-10 | 预存余额 P0-1~P1-2 功能测试验证 + +## 后端编译 + +| 项目 | 结果 | +|------|------| +| `mvn compile -pl sw-business/sw-business-server -am -o` | PASS | +| `mvn package -pl sw-business/sw-business-server -am -o -DskipTests` | PASS (147MB jar) | + +## 后端单元测试 + +| 测试类 | 状态 | 备注 | +|--------|------|------| +| ChargeServiceCounterPaymentTest (7 tests) | 7/7 PASS | 修复了 AccountLogContext + CustBillTypeService mock | +| 其他已有单元测试 (300+ tests) | 全部 PASS | 仅 2 个已有失败 (CustServiceImplCustomerPageTest, PaymentRecordServiceImplTest) 非本次引入 | + +## 新增测试代码 + +| 文件 | 类型 | 编译 | +|------|------|------| +| `test/.../CounterChargeFullChainIntegrationTest.java` (新增方法) | 集成测试 | PASS | +| `test/resources/sql/prestore/01_counter_topup_log_seed.sql` | SQL 种子 | N/A | + +> 集成测试需要 PostgreSQL 环境运行 (`REV004_IT_DB_URL` 等环境变量)。代码已通过编译验证,实际执行待部署环境就绪。 + +## 前端 + +| 项目 | 结果 | +|------|------| +| TypeScript 类型检查 (`tsc --noEmit`) | 新文件无新增错误 | +| dist 构建 | dist/ 已存在 | +| E2E 测试代码 (2 文件) | 已创建,待后端运行后执行 | + +### 新增 E2E 测试 + +| 文件 | 覆盖 | +|------|------| +| `tests/e2e/prestore/counterTopup.e2e.spec.ts` | counterTopup充值流程, 欠费拒绝, counterPreview余额查询 | +| `tests/e2e/prestore/prestorageAdjustBpm.e2e.spec.ts` | 预存调整列表, BPM创建, 详情查询 | + +## 部署就绪项 + +| 产物 | 路径 | +|------|------| +| 后端 JAR | `sw-business/sw-business-server/target/sw-business-server.jar` | +| 前端 dist | `water-frontend/dist/` | +| DDL (PG) | `sql/rev005/REV006_account_log_ddl.sql` | +| DDL (MySQL) | `sql/rev005/REV006_account_log_ddl_mysql.sql` | +| DDL (MySQL) | `sql/rev005/REV006_cust_bill_type_ddl_mysql.sql` | + +## 待执行项 + +1. 部署 PostgreSQL 并执行 DDL +2. 启动后端 (`java -jar sw-business-server.jar --spring.profiles.active=local`) +3. 启动前端 (`pnpm dev`) +4. 运行 Browser 手动冒烟 (按 plan Task 7 清单) +5. 运行 Playwright E2E 测试 (`npx playwright test tests/e2e/prestore/`)