什么是接口测试?
定义:通过模拟接口调用方的各种情况来测试接口提供方处理逻辑正确性、功能、性能。
- 接口调用方:客户端前端(移动端/PC应用&浏览器)、软件内部|后台等
- 接口提供方:后端、底层服务、第三方服务、内部平台服务、sdk等
接口测试测什么?
接口测试的目的
接口测试定位
参见自动化金字塔
接口测试的优点
- 接口文档,维护成本是最低的
- 与UI相比,稳定、执行速度快、反馈迅速
- 比单元测试更贴近业务场景
- 接口测试可以做到更多的覆盖场景
- 接口测试录制回放容易
接口测试与功能测试的异同
相同点:
- 前提:已知输入内容和期望结果
- 过程:使用被测对象——使用功能|调用API
- 目的:验证是否能返回期望的结果
不同点:
- 对测试环境的依赖:接口测试在返回结果被呈现给客户前就完成了,对环境依赖小
- 速度:接口测试无需界面加载/响应,短时间内可回归测试多条用例,速度比较快
- 反馈问题效率:接口测试结合持续集成实践,可快速回归并准确发现问题
接口测试方法
接口测试采用的最基本的就是黑盒测试。
常用的设计测试用例方法:等价类、边界值、错误推测法、场景法、因果图。