一、接口测试的分类

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