不同视角的接口
开发眼中的接口-模块与模块之间对接定义
测试眼中的接口-可以独立部署成服务的协议接口
常见的接口协议
HTTP-超文本传输协议(TCP)
HTTPS-安全超文本传输协议(SSL/TLS)
FTP-文件传输协议
TCP/IP/UDP
HTTP协议响应码
1xx-信息响应类,表示接收到请求并且继续请求
2xx-处理成功响应类,表示动作被成功接收、理解和接受
3xx-重定向响应类,为了完成指定的动作,必须接受进一步处理
4xx-客户端错误,客户请求包含语法错误或者不能正确执行
5xx-服务器错误,服务器不能正确执行一个正确的请求
为什么做接口测试?
接口的由来-连接前后端及移动端
不同端的工作进度不一样,需要对最开始出来的接口做接口测试
或使用其他第三方系统的接口,比如银行/淘宝/支付宝等
节约时间,缩短项目周期,提高工作效率,提高系统健壮性
什么是接口测试?
接口种类-
外部接口
内部接口-
上层服务和下层服务
同级服务
接口类型-
http- post/get/put/delete(后两者很少用)
post/get差异-参数提交方式/请求数据大小/安全性
接口测试流程
功能测试用例-
功能是否实现
功能是否按照接口文档实现
异常测试用例-
参数异常-
关键字参数
参数为空
多、少参数
错误参数
数据异常-
关键字数据(类型不一致)
数据为空
长度不一致
错误数据
安全测试用例-
cookie
header
唯一识别码
接口测试工具
使用接口测试工具的作用- 提高工作效率
如何选择接口测试工具-时间,简易程度,业务复杂度,测试员能力
接口工具分类-
抓取接口
httpwatch- 集成在IE和firefox浏览器插件(只能在IE和firefox使用,查看数据麻烦,一般不用)
wireshark- 经过本地的所有请求都会抓取,需要过滤
fiddler- 抓包工具的不二选择,还有其他功能
测试接口
loadrunner-
fiddler-
soupui-
jmeter-
postman- 常用
接口测试工具三剑客
fiddler, postman, python+request+unittest
为什么要自己开发接口测试程序
工具没法满足要求
业务限制
安全性
fiddler使用
查看接口请求方式
查看请求数据、响应数据
接口返回状态
设置代理(移动端)
header、cookie
设置断点
添加筛选
接口测试
postman使用
能别人所不能postman教程
如何自动反复测试一个需要携带header的post请求,并且针对线上、测试环境同一个数据进行测试,并对实际结果做比较
多接口一起使用
方便回归
提高技能水平