【接口测试】
1、分层测试理论:
UI测试(测试成本最高,发现BUG时间最晚)
接口测试
单元测试
2、协议分析工具
1)网络监听
TcpDump + Wireshark
2)协议客户端工具
curl、postman
3)代理Proxy
推荐工具:手工测试charles【全平台】、安全测试burpsuite【全平台java】
自动化测试:mitmproxy
其他代理:fiddler【仅windows】、Anyproxy【全平台】
3、常见的接口协议
1)HTTP协议
端口号:80
请求行:method url protocol
eg.
GET /uploads/user/avatar/31438/8216a3.jpg HTTP/1.1
请求方法:GET、POST、PUT、DELETE、HEAD
请求头:Host Cookie User-Agent
请求体:JSON XML FORM
响应状态行
响应头
响应体
HTTP响应状态码:
1xx:临时响应,表示通知信息,请求收到了或正在进行处理
2xx:成功,接受或知道了
200OK
3xx:重定向,
301永久移动
302临时移动
4xx:表示客户端请求错误
403未授权
404未找到
5xx:服务器错误
500服务器内部错误
503服务不可用
URI 和 URL
URI:统一资源标识符,标识资源
URL:统一资源定位符,定位资源
eg.
URL
https://www.baidu.com/s?tn=baidu&wd=接口测试
协议https
域名www.baidu.com
端口跟在域名后面,域名和端口之间使用":"作为分隔符,非必须,如果省略端口部分都将采用默认端口
路径/s,即资源在服务器www.baidu.com的哪个路径下
请求参数tn=baidu&wd=接口测试
2)HTTPS协议
端口号:443