# 第一版系统化测试进度 ## 2026-07-01 ### 新增测试基础 - API 引入 Jest + ts-jest。 - API 新增脚本: - `npm --prefix api test` - `npm --prefix api test -- ` - 根目录新增脚本: - `npm run test:api` - `npm run test:gateway` ### 新增 API 测试 | 测试文件 | 覆盖范围 | | --- | --- | | `api/src/risk-review/risk-review.service.spec.ts` | 最大号码数、重复率、非法号码率、黑名单率、模板变量异常、非工作时间营销大批量、短时间频控、直接拒绝、人工审核。 | | `api/src/billing/billing.service.spec.ts` | 70/67 费用预估、余额/授信/套餐检查、充值、冻结、扣费、释放、退款、调整、短信计费记录。 | | `api/src/send-chain/send-chain.service.spec.ts` | 批量任务创建、手机号去重拆分、发送入队、Gateway SubmitCommand 投递、submit result、receipt、uplink、72 小时未知转超时。 | | `api/src/channels/channels.service.spec.ts` | 通道创建、路由规则、报备材料 upsert、报备任务创建、导出、回执导入、签名报备状态同步。 | | `api/src/operations/operations.service.spec.ts` | 发送记录查询过滤、dashboard、statistics、trace、reconciliation。 | ### 新增 Gateway 测试 - `gateway/internal/tracker/tracker_test.go` 增加并发 SEQID/MSGID/GatewayMessageID 映射测试。 - 既有 Gateway 测试继续覆盖: - tracker 基础映射和未知 submit resp。 - reconnector 重连和最终错误返回。 - health handler。 - gocmpp adapter。 - spike simulator。 ### 已执行命令 ```bash npm --prefix api test -- risk-review.service.spec.ts npm --prefix api test -- billing.service.spec.ts npm --prefix api test -- send-chain.service.spec.ts npm --prefix api test -- channels.service.spec.ts npm --prefix api test -- operations.service.spec.ts npm run test:api npm run verify:phase8 npm run spike:gateway npm --prefix api test npm run test:gateway ``` ### 当前结果 - API Jest:5 个 test suite 通过,21 个测试通过。 - Gateway:`npm run spike:gateway` 通过。 - 阶段 8 完整验证:`npm run verify:phase8` 通过,其中 BullMQ spike 15000 条消息、并发 500、端到端 735.83 TPS,满足 500 TPS。 - 前端 build 通过,仍存在既有 Vite chunk size warning。 - API 测试均使用 mock,不要求 PostgreSQL/Redis/MinIO 在线。 ### 已知缺口 - 暂未新增前端测试框架,前端仍以 `npm run build` 作为 smoke。 - 暂未跑真实 PostgreSQL/Redis/MinIO 集成测试。 - BullMQ 真实链路仍由 `npm run spike:bullmq` 覆盖,不在 Jest 内启动 Redis。 - Gateway 未接真实运营商 SMSC;真实 CMPP 互通需要运营商测试环境后补充联调记录。