接口测试概述2
一、架构:
客户端发送请求给服务端,服务端必须回应客户端的请求
存在的问题:
1、容易超时,客户端发送请求后,服务端迟迟没有回应客户端的请求
2、如果请求是存在大量的计算量和逻辑存在问题,就会导致请求堵塞,后面的都积压
同步通信又可以说是请求/响应的模式
在异步通信中存在一个中间件,即MQ
MQ
RabbitMQ(未知),Kafka(linkyin),ActivityMQ(alibaba)。(三大中间件)
协议:
1、请求地址
2、请求方法
3、请求头
4、请求参数(可能有,也可能没有)
Response回复:
1、协议状态码
2、响应数据
由于POST和DELETE请求方法不安全所以大多数时候往往会用POST来代替。
常用的请求头
1、协议状态码
200 请求成功
301 永久重定向
302 临时重定项
400 Bad Request 客户端请求错误 (测试错误)
1、请求参数不对 2、请求头不对
401 Unauthorized 无权限访问该系统
403 Forbidden 有权限但是禁止访问
404 请求的资源不存在404NOT FOUND (请求的地址不存在,所以导致请求的资源也是不存在)
405 不被允许的请求方法
405METHOD NOT ALLOWED 你请求的方法,没有定义对应的请求方法,但是你去进行访问
500 服务器内部错误 (程序员错误)
错误类型:空指针 Null PointExpection 堆栈溢出 在测试选择项的时候,选择很多很多的项,同时触发,看是否会暴露该问题 OOM(内存泄露) Out Of Memory
其他异常:Expection
2、响应数据
响应数据返回的数据格式是由响应头里面的content-type来决定的
3、响应头(response headers)
1、表单 application/x-www-form-urlencoded; charset=UTF-8(GBK)
2、json格式:application/json;charset=UTF-8 json数据格式:基于JSON的数据格式,但是数据类型是字符串
3、text/html :返回的是基于html的数据格式
4、text/xml:返回的是基于xml的数据格式