接口测试流程和用例

学习目标

  • 掌握接口测试流程
  • 熟练掌编写接口测试用例

1. 什么是接口测试

对系统和系统之间的接口进行单独测试,主要是校验数据的交换、传递和控制管理过程,以及相互逻辑依赖关系

2. 接口测试原理

模拟客户端向服务器发送请求,服务器接收请求后进行相应的业务处理,并向客户端返回响应数据,检查响应数据是否符合预期。


Q:“模拟客户端”是什么意思?

答:不使用真正的客户端(APP、web浏览器),用接口测试工具代替客户端

Q:“接口测试工具”是什么?

答:直接填写“接口信息”,就可以通过接口访问服务器的工具

3. 接口测试的优点

  • 测试可以提前介入,提早发现Bug,bug解决成本更低
  • 可以发现一些页面操作发现不了的问题
  • 接口测试低成本高效益(底层的一个Bug能够引发上层8个左右Bug,接口测试可以实现自动化)
  • 不同于传统的单元测试,接口测试是从用户的角度对系统进行全面的检测,比单元测试更能贴近用户操作

4. 接口测试的实现方式

  • 使用接口测试工具来实现(比如:JMeter、Postman)
  • 通过编写代码来实现(比如:Python + Requests)

5. 接口自动化测试概念

是让程序或工具代替人工自动的完成对接口进行测试的一种过程。

6. 接口测试流程

  • 需求分析
    • 主要依据需求文档
  • 接口文档解析
    • 一般是由开发人员编写接口文档 (API文档)
  • 设计测试接口用例
  • 使用接口测试工具(postman、jmeter)编写测试脚本
  • 执行测试
  • 接口缺陷管理与跟踪
  • 生成测试报告
  • 接口自动化持续集成 (可选)

7. 接口用例的设计方法和思路

接口的功能性测试:验证接口功能是否按照接口文档实现 (输入+处理+输出)

① 单接口测试:重点在于验证每一个入参

  • 正向功能:(验证正确性)
    • 全部参数
    • 仅必填参数
    • 部分参数组合
  • 反向测试:(验证健壮性)
    • 参数异常:无参、少必要参、多参、错误参数
    • 数据异常:数据为空、长度不符、类型不符、错误数据
    • 业务数据异常:结合业务功能考虑输出的各种异常返回情况

② 多接口组合测试:业务场景功能测试 (站在用户角度考虑常用的使用场景)

  • 接口之间数据依赖,上下游接口的依赖关系

案例1-单接口测试用例


案例2-多接口组合测试用例