什么是接口
- 生活中的接口:插座,转接头,水龙头,充电器等,可以总结为连接两个设备,并且进行物质传递。
- 用户接口:
API:应用程序接口。
GUI:用户图形化接口。eg:电梯
接口的类型
- HTTP协议的接口
- web service的接口
跨域:协议,域名,端口号任意一个不一致都会产生跨域。
什么是接口测试
接口测试是测试系统组件之间接口的一种测试,主要用于检查外部系统与系统之间,以及内部各个子系统之间的交互点,重点要检查数据的交换,传递,控制管理的过程,以及系统之间的相互逻辑依赖关系。
为什么要做接口测试
- 发现页面上发现不了的bug
- 检查系统的异常处理能力
- 检查系统的安全性稳定性
- 接口测试好的话,后端就可以不用变了,前端就可以随意变
- 接口时一个完整的体系,也包括功能,性能,安全性测试。
- 更早的介入测试。
接口测试的原理
接口测试的流程
1、分析接口文档
接口文档的形式
在进行接口测试的时候,开发人员会给到我们一份接口文档,这份接口文档可能会是一个链接,里面有很详细的接口介绍,也可能是一个pdf格式的文档,或者是开发者在项目中集成swagger,swagger可以在线测试接口。
接口文档包含的内容
接口名称、接口地址、请求方式、返回格式、请求示例、请求参数说明、返回示例、返回参数说明、错误码参照等。
2、设计接口用例
设计用例的方法
- 通过性验证:按照接口文档上的参数,输入正确合法的参数,是否可以返回正确的结果。
- 参数组合
- 输出结果覆盖
- 参数设计:
参数的必填项校验
枚举变量,覆盖所有枚举值
参数的顺序
参数的类型
参数有,空,null
参数的边界值校验:参数的最大值最小值,字符串的长度
参数包含特殊字符
异常场景
重复提交
不存在的参数值
接口用例包含的内容
模块1 | 模块2 | 用例ID | 接口名称 | 前置条件 | 用例标题 | 接口URL | 请求方式 | 参数 | 预期结果 | 实际结果 | 是否通过 | 测试人员 |
3、准备接口脚本
根据测试方案中的测试策略编写脚本。