# 预存余额功能 — 测试与部署结果 > 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/`)