后台 regression
运行
使用真实网关、独立 PostgreSQL schema 和本地协议上游,不使用生产数据。
完整确定性套件还要求 redis-server 在运行测试的主机 PATH 中可用(Ubuntu/Debian 可安装 redis-server 包)。
计费队列故障恢复、并发会话粘性和代理对话用例会自行启动随机端口的专属 Redis,结束时终止进程,
不使用或清空已有 Redis。仅启动 Compose 的 Redis 容器不能满足本机二进制依赖;CI 会在测试前显式安装并检查版本。
make regression
bash scripts/regression.sh -v Pricing
bash scripts/regression.sh -v FallbackGitHub Actions 将完整详细输出保存到 .e2e/release/regression.log,无论成功
或失败都通过 release-test-results 附件上传。步骤成功时只打印简短结果,失败时
仅打印日志最后 16 KiB,并保留回归退出码。本地默认只显示简短结果,-v
额外显示用例开始及通过、失败、跳过状态。两种模式都将完整诊断保存到每轮独立的
.e2e/runs/regression-*/regression.log,CI 也会上传这些文件。
新用例要观察什么
| 场景 | 断言 |
|---|---|
| 配置保存 | HTTP 结果 + 重新读取 + 实际执行 |
| 权限 | 正向成功、跨组织/失效身份拒绝、列表范围 |
| 回退 | 上游实际调用顺序、次数、最终模型 |
| 费用 | usage、价格快照、五级累计、重复结算去重 |
| 失败 | 错误响应、无部分写入、无错误成功缓存 |
用例 · 隔离 harness
数据通过 t.Cleanup 清理。数据库不可达不能靠跳过算通过。真实供应商限流/计价另跑付费验证。