接口测试作为测试金字塔结构的中间层,有低成本,高回报的优势。
接口:本质上不需要关注具体事项,对接并不理解的程序或服务时,需要遵守的一些了格式或者流程规定。
本质就是「约定」。
接口类别
- 硬件设施层面的接口
- 软件程序交互的接口
软件层面的接口也可以分为:
- 程序内部的接口
- 系统对外的接口
接口测试
接口测试是测试系统组件间接口的一种测试手段。
主要用于检测外部系统和系统之间及内部各个子系统之间的交互点。
测试的重点是检查数据的交互,传递和控制管理过程,以及系统间的相互逻辑依赖关系。
测试策略
- 接口功能测试
- 接口性能测试
- 接口稳定性测试
- 接口安全性测试
总之:接口测试就是通过测试不同情况下的入参和与之相应的出参,来判断接口是否符合或满足相应的功能性,安全性要求。
必要性
- 发现页面操作发现不了的bug,覆盖更多前端无法测试的场景
- 越底层的bug,修复成本越低
- 检查系统的异常处理能力
- 检查系统的安全性,稳定性,前端入参可信度
- 进行项目回归
- 容易实现自动化持续集成
- 可以尽早介入测试
- 保障接口测试后,测试工程师可以专注于各分层间的测试质量保障
关注点
检查数据的交互,传递和控制管理过程。
环境安装
代码语言:javascript复制$ pip install requests
代码语言:javascript复制$ pip install robotframework-requests
代码语言:javascript复制$ pip install robotframework-httplibrary
接口测试文件结构
- 创建项目
- 创建接口测试子目录
- 创建资源子目录
- 创建资源次级目录
Business:统一存放各个产品业务下的资源文件,按照不同业务线划分,存放该业务线下通用的资源文件和关键字
Public:统一存放通用的资源文件
Lib:存放第三方库文件
- 实战项目业务分层
Single_Api:存放各个单接口测试套,测试用例。主要验证俺哥接口的功能及数据正确性。
Business_Api:存放不同业务场景下的测试套件,测试用例。主要验证在不同业务功能场景下,多个接口数据之间的信息传递是否正确。