Cross-Service Smoke Design
测试边界
tests/smoke/ 只描述真实跨服务 smoke 的链路与证据,不承载单服务进程内测试。
分类边界:
unit- 单函数或单组件测试。
integration- 真实数据库、仓储或适配层集成测试。
service-http- 单服务 HTTP surface,通常在进程内组装依赖。
cross-service-smoke- 至少覆盖
gateway -> token-runtime -> supply-api的真实链路。
- 至少覆盖
最小链路
最小 smoke 步骤:
- 检查
gateway健康状态。 - 检查
platform-token-runtime健康状态。 - 检查
supply-api健康状态。 - 使用真实 smoke token 通过
gateway发起一次受保护请求。 - 验证该请求需要经过 token-runtime 权限解释,并落到 supply-api 受保护 HTTP surface。
输入环境变量
scripts/ci/cross_service_smoke.sh 计划使用以下输入:
SMOKE_GATEWAY_BASE_URLSMOKE_TOKEN_RUNTIME_BASE_URLSMOKE_SUPPLY_API_BASE_URLSMOKE_BEARER_TOKENSMOKE_EXPECTED_SCOPESMOKE_EXPECTED_MODELSMOKE_ALLOW_LOCAL_PLACEHOLDER
输出工件
输出必须稳定落到:
reports/archive/gate_verification/cross_service_smoke_<timestamp>.logreports/archive/gate_verification/cross_service_smoke_<timestamp>.md
后续要求:
- smoke markdown 报告可被 release manifest 收录。
SKIP_LOCAL_PLACEHOLDER不得计入 release pass。- 只有真实 smoke
PASS才能作为发布路径证据。