一、接口测试的分类
1.接口可以分为外部接口和内部接口:
内部接口--代码内部定义的接口,可用于定制规则,拓展使用,只能在代码内部调用(基于单功能);
外部接口--通过容器对外发布的接口服务,可以通过远程调用访问接口(基于业务场景);
其中外部接口又可以分为WebService接口和API接口:
WebService接口--符合SOAP协议并通过HTTP传输,入参和响应信息都采用XML格式;
API接口--符合HTTP协议,通过不同的路径来调用,常用GET和POST方法,入参一般以key-value(键值对)的形式,响应信息一般是JSON串;
2.按接口的表现形式还可以分为如下六种:
HTTP接口--常见基于HTTP、HTTPS(加密传输)协议
RPC接口--基于HTTP、TCP、UDP协议,主要通过远程调用,本质是Client/Server模式
WebService接口--基于HTTP SOAP协议
RESTful接口--常见基于http协议,用GET DELTE UPDATE POST等表达不同的请求
WebSocket接口--TCP、UDP底层,主要用于Web端和服务器端之间的交互
FTP接口--基于TCP/IP协议(文件传输协议)
二、为什么要做接口测试
1.越底层发现的bug,维护成本越低,属于低成本高收益;
2.接口测试相比UI测试更稳定,更容易实现接口自动化的持续集成,提高测试效率;
三、怎么做接口测试
1.通过工具:如POSTMAN、Jmeter、SOAPUI等
2.通过代码模拟HTTP请求发送给接口:常见框架有Python语言url类库+Pytest、Java语言Robot framework+APP library