目录
什么是接口?
- 接口的的主要组成要素:
- 接口请求地址
- 请求方法:
- get
- post
- 接口参数
- 接口返回值
- 接口的作用:规定了一些规则
接口测试的价值
- 为什么要进行接口测试?
- 必备的工作
- 软件系统中存在很多接口
- 软件系统调用了其他系统提供的接口
- 提早开展测试
- 接口只要定义好了,没有界面也是可以进行测试的
- 可以使用接口测试工具或写接口测试代码
- 早一点发现bug:bug修复成本和风险大大下降
- 提前确定接口是否能够正常实现
- 可以尽早准确定位bug
- 必备的工作
- 接口测试与自动化测试的异同
- 接口&UI自动化:原理不同
- UI自动化
- 元素定位
- 模拟人对界面或页面的操作
- 接口自动化测试:模拟发送请求
- request请求
- 传入什么数据
- response响应结果
- UI自动化
- 接口&性能自动化:目标不同
- 接口测试是为了测试:
- 接口输入参数是否进行了校验
- 响应结果是否符合接口设计要求
- 性能测试是为了测试大数据量情况下或者大用户量访问时
- 系统能否正常运行
- 系统处理的响应时间
- 服务器资源占用情况
- CPU
- 内存
- 硬盘
- 网络
- 接口测试是为了测试:
- 接口&单元测试:测试的对象不同
- 单元测试:独立的代码内部逻辑是否正确
- 接口测试:接口的实现以及接口之间的调用是否正确
- 接口&UI自动化:原理不同
接口测试原理
- 协议
- 协议的作用:规定在网络上进行数据传输的规则
- HTTP协议的组成:
- 请求
- 例:GET /iwebshop/index.php?controller=site&action=search_list&word=ipad HTTP/1.1
- 请求行
- 请求方法
- URL地址
- 请求头
- 空行
- 消息主体
- 响应
- 例:HTTP/1.1 200 OK
- 请求行
- 常见状态码:
- 404:找不到网页
- 500:服务器内部错误
- 200:成功
- 302:重定向
- 常见状态码:
- 请求头
- 空行
- 消息主体
- 请求
- 协议与接口的关系:通过分析协议数据包,来获取接口测试的相关内容
- 请求地址
- 请求方法:post / get
- 接口参数
- 接口返回值
- 用什么方法抓取在网络上传输的接口数据包?
- 抓包工具
- Fiddler
- Wireshark
- HttpWatch
- firebug
- 抓包工具
如何开展接口测试
- 分析接口测试的需求
- 设计相关接口测试用例
- 实现接口测试
- 通过接口测试工具
- 通过编写接口测试脚本
- 设计并研发接口测试框架
- 如果发现接口测试错误:编写接口测试bug单
- 进行回归测试,直到bug修复成功