Skip to content

20. 第三方接口和外部依赖怎么测试

很多业务系统依赖第三方接口和外部服务。

支付、短信、邮件、地图、物流、风控、征信,都可能调用第三方接口。

一、第三方接口测试的核心问题

第三方接口测试要解决:

  • 正常调用是否成功;
  • 异常调用是否有处理;
  • 接口返回是否正确;
  • 接口超时是否有处理;
  • 接口失败是否有重试;
  • 接口限流是否有处理;
  • 接口变更是否有适配;
  • 接口安全是否有保障。

第三方接口不可控,测试要考虑多种场景。

二、正常调用要测试

第三方接口正常调用要验证:

  • 接口地址是否正确;
  • 接口参数是否正确;
  • 接口返回是否正确;
  • 业务逻辑是否正确处理返回;
  • 数据是否正确保存。

比如支付接口:

  • 支付接口地址是否正确;
  • 支付参数是否包含订单信息;
  • 支付成功返回是否正确处理;
  • 支付成功订单状态是否更新;
  • 支付流水是否正确保存。

三、异常调用要测试

第三方接口异常调用要验证:

  • 参数错误是否被拦截;
  • 权限不足是否被拦截;
  • 接口返回失败是否有处理;
  • 接口返回异常数据是否有处理。

比如短信接口:

  • 手机号格式错误是否被拦截;
  • 短信模板不存在是否被拦截;
  • 短信发送失败是否有提示;
  • 短信接口返回异常是否有处理。

四、接口超时要测试

第三方接口超时要验证:

  • 接口超时是否有重试;
  • 接口超时是否有降级;
  • 接口超时是否有告警;
  • 接口超时后业务状态是否正确。

比如支付接口:

  • 支付接口超时是否有重试;
  • 支付接口超时是否显示处理中;
  • 支付接口超时是否有告警通知;
  • 支付接口超时订单状态是否保持待支付。

五、接口失败要测试

第三方接口失败要验证:

  • 接口失败是否有重试;
  • 接口失败是否有降级;
  • 接口失败是否有补偿;
  • 接口失败是否有告警;
  • 接口失败后业务流程是否正确。

比如物流接口:

  • 物流查询失败是否有重试;
  • 物流查询失败是否显示暂不可查;
  • 物流查询失败是否有补偿任务;
  • 物流查询失败是否有告警;
  • 物流查询失败订单发货状态是否保持。

六、接口限流要测试

第三方接口限流要验证:

  • 接口调用频率是否超限;
  • 接口限流是否有处理;
  • 接口限流是否有降级;
  • 接口限流是否有告警。

比如短信接口:

  • 短信发送频率是否超过接口限制;
  • 矟信接口限流是否有队列延迟;
  • 短信接口限流是否有降级处理;
  • 短信接口限流是否有告警通知。

七、Mock 和沙箱要使用

第三方接口测试通常需要 Mock 或沙箱:

  • 使用沙箱环境测试;
  • 使用 Mock 接口测试异常场景;
  • 使用 Mock 接口测试性能;
  • 使用 Mock 接口测试并发。

比如支付沙箱:

  • 使用支付沙箱测试支付成功;
  • 使用支付沙箱测试支付失败;
  • 使用支付沙箱测试支付超时;
  • 使用 Mock 接口测试支付并发。

八、接口变更要关注

第三方接口变更要验证:

  • 接口升级是否有适配;
  • 接口参数变更是否有适配;
  • 接口返回变更是否有适配;
  • 接口废弃是否有替代方案。

比如短信接口升级:

  • 短信接口参数新增是否适配;
  • 短信接口返回字段变更是否适配;
  • 短信接口废弃是否有新接口替代。

九、接口安全要关注

第三方接口安全要验证:

  • 接口调用是否有签名校验;
  • 接口参数是否有加密;
  • 接口返回是否有校验;
  • 接口密钥是否安全存储;
  • 接口调用是否有日志记录。

比如支付接口:

  • 支付请求是否有签名校验;
  • 支付参数是否有加密;
  • 支付返回是否有验签;
  • 支付密钥是否安全存储;
  • 支付调用是否有日志记录。

十、面试回答模板

可以这样回答:

第三方接口测试我会从正常调用、异常调用、超时处理、失败处理、限流处理、Mock 沙箱、接口变更和接口安全几个方面展开。正常调用测接口地址参数返回、业务处理、数据保存;异常调用测参数错误、权限不足、返回失败、异常数据处理;超时测重试、降级、告警、业务状态;失败测重试、降级、补偿、告警、业务流程;限流测频率限制、队列延迟、降级、告警;Mock 沙箱测沙箱环境、Mock 异常、Mock 性能、Mock 并发;接口变更测升级适配、参数返回变更、废弃替代;接口安全测签名校验、参数加密、返回验签、密钥存储、日志记录。

这个回答能体现你有完整的第三方接口测试思路。

十一、下一步建议

建议你把一个熟悉的第三方接口功能按上面维度重新整理:

  • 正常调用测试点;
  • 异常调用测试点;
  • 超时处理测试点;
  • 失败处理测试点;
  • Mock 沙箱测试点;
  • 接口安全测试点。

Powered by VitePress

🔒 需要口令解锁

关注微信公众号 测开阿Duang
回复关键词 「密码」 获取口令

公众号二维码

解锁后本浏览器长期有效