关于依赖方接口调用的测试

244 阅读1分钟

背景:

  • 由于在开发测试过程中,依赖方的文档没有说明入参的限制,开发不合理入参,导致问题在live显露出来。
  • 在测试过程中,又很少去关注对依赖方接口调用的测试,从而导致问题无法暴露。

描述:

问题描述:

  • shop_list参数为数组,其限制的最大长度为2000,在live环境入参时,长度超过2000,导致接口调用失败。在test环境由于数据量相对比较少,问题无法显露出来。
# 某api
{
    "shopid_list":[601565207],
    "region":"CN"
}

扩展与思考:

  • 调用依赖方接口应该注意:

    • 注意每个请求的参数是否符合需求

      • 参数类型
      • 参数长度
      • 请求体
    • 所需要的请求头

      • 身份验证相关的请求头
    • 接口的qps

    • 接口超时

      • 接口层面的超时限制:为了提高资源的利用率。保护其他接口不受影响。
      • 网关层面的超时限制:超时后资源被释放,用来处理其他的请求,以此提升 Nginx 的性能。(资源如果不足的话,那么请求可能就无法正常达到后端服务器)
    • 某一段时间内,接口最大调用次数

      • 有些接口为了限流,会对同一ip发出接口请求做限制,在一段时间内,最大请求不能超过限定的次数。