OpenAI API 集成“能返回一次答案”还不能上线。验收至少要覆盖认证、正常请求、超时、可重试错误、不可重试错误、日志脱敏和结果核验;每一项都要能重复执行,并有明确的成功或失败结论。
建立一条最小基线
先按官方快速入门用服务端环境变量配置密钥,只发送“只回复 OK”的短请求。记录请求时间、模型、HTTP 状态、请求 ID、耗时和 usage,不要记录 Authorization 头或完整敏感输入。

from openai import OpenAI
client = OpenAI(timeout=20.0, max_retries=0)
response = client.responses.create(
model="gpt-6-luna",
input="只回复 OK",
max_output_tokens=10,
)
assert response.output_text.strip() == "OK"
print(response.id, response.usage.total_tokens)
先关闭 SDK 自动重试,能让验收看到真实失败;上线时再按业务幂等性决定哪些错误允许有限重试。
执行六类测试
- 正常请求:连续三次返回 OK,响应 ID 不为空。
- 无效密钥:必须返回认证失败,页面不能沿用旧答案伪装成功。
- 超时:缩短客户端超时做演练,业务状态保持失败或待确认,不能直接重发有副作用的动作。
- 429:区分短期限流和额度错误;短期限流可按提示等待并限次重试。
- 400/403:检查参数、项目和模型权限,不把这类错误放进无限重试。
- 日志:能用请求 ID 定位一次失败,但搜索不到完整 API 密钥和用户隐私。
错误类别和处理方向应对照官方错误码指南。测试中使用无效密钥时应立即撤销或销毁,不要把它留在脚本和截图中。
验收重试是否安全
纯文本生成通常可以用有限次数和退避策略重试;包含付款、发信、建单或删除的工具调用,需要幂等键,并先查询外部动作是否已经发生。网络超时只说明客户端没拿到结果,不等于服务端没执行。
验收通过的证据应包括测试输入、预期状态、实际状态和日志编号。只写“测过了”不能复现,也不能作为上线依据。
常见问题
要不要测试 5xx?要。可在自家适配层模拟上游暂时不可用,确认界面给出可行动提示,队列和报警能接住失败。
成功率多少才合格?取决于业务目标,应在上线前写出阈值和统计口径。本文没有调用你的部署环境,真实超时、限额和错误分布必须在目标服务器上验证。
Ai菜鸟网。发布者:AI小管家,转载请注明出处:https://www.alyyhw.com/31335.html