这页把要测什么、怎么测、谁测、什么时候测讲清楚。 覆盖 9 个后端服务 + 一个前端 + 双链(BSC / TRON)。 v1.0 的承诺是:线上事故 = 0,资金账本 100% 自洽,签名流程零绕过。 所有具体用例数和覆盖率都跟随 sprint 在 CI 自动统计,这页给的是范围和门槛。
用例数从下往上递减,执行成本和稳定性反向。 每一层只测本层职责,不替代下层(如:E2E 不替代 unit 检查 null)。 百分比是用例条数占比,不是覆盖率指标。
每个后端服务必测什么。覆盖率列是 v1.0 GA 的最低门槛(行覆盖率,Jacoco 统计,跨 src/main/java)。低于门槛的 PR 不允许 merge。
VerifyTgOAuthService 必须覆盖全部失败分支(timestamp 漂移、hash 不匹配、bot token 错配)。每个流程都跑happy path + 至少 1 个失败路径。 失败路径要验证账本回滚 / 余额一致 / 队列状态正确,不只是看错误码。
verifyTgOAuth → JWT 返回 → 前端存储 → 调 /api/v1/user/me 通过USER_TG_AUTH_EXPIREDUSER_TG_AUTH_INVALID,不写库WALLET_BALANCE_INSUFFICIENT,无任何账本变更TICKET_SOLD_OUTWITHDRAW_ADDRESS_BLOCKED,余额不动BSC + TRON 各自一套测试,用真实 testnet,不用纯 mock。原因:RPC 行为、gas 计费、event log 编码这些细节只有真链才会暴露。
legacy 项目踩过 fastjson RCE、predictable random、unverified JWT、git 历史泄密。 v1.0 必须每项都有 test 显式覆盖,在 CI 跑。
${} 拼接告警block.prevrandao / block.timestamp 当随机源v1.0 不追求海量并发。压测目标:验证开奖时段、提现高峰下系统不雪崩,链上 RPC 不被限流。
每个阶段必须满足下面的硬性条件才允许进入下一阶段。必须项目失败直接卡住,推荐项目走 PR review。
发现缺陷后填 issue,按下表分级。SLA 是从分级到修复 PR 提交的时间,不是合并时间。
QA 测试方案 V1.0 · 与 backend / frontend / contract 同步演进。
具体用例数、当前覆盖率、上一轮压测报告由 CI 自动统计,不在本页固化。