接口测试是什么?
百度百科给出的解释是:接口测试是测试系统组件间接口的一种测试。接口测试主要用于检测外部系统与系统之间以及内部各个子系统之间的交互点。测试的重点是要检查数据的交换,传递和控制管理过程,以及系统间的相互逻辑依赖关系等。
接口包括内部接口和外部接口:
-
内部接口:开发人员自己开发的对自身系统提供的接口;
-
外部接口:开发系统调用外部的,例如:微信、支付宝、其它接口等。
在软件测试工作中,接口统称为API,用来实现数据的交互,接口测试的本质是:测试接口能否正常的交互数据、权限控制以及异常场景。
常用的接口测试工具有postman、jmeter。
接口返回数据
接口返回数据的格式一般有:json、html、xml。
1、json格式(市面占比85%以上)
一般有三组数据:{"code":200,"message":"请求成功","dataMap":{"..."},
-
code: 返回状态码
-
message:对返回信息或者状态错误的解释说明
-
dataMap:真正的返回数据
2、html格式
<html>
<title></title>
<body>
<code>200</code>
......
</body>
</html>
3、xml格式
<?xml?version="1.0"encoding="utf-8">
<code>200</code>
......
</xml>
接口测试协议
1.webservice协议
接口地址:http://......?wsdl。
2.dubbo协议
接口地址以dubbo://......,适用于少量数据的传输。
3.http协议(90%)
接口地址:http://.....,http端口为: 80。https = http+ssl 安全传输协议 ,端口为443。
市面上主要使用HTTP协议进行数据传输,所以我们主要学习这个协议。
什么是http协议?
http是超文本传输协议,主要用于浏览器和服务器之间传输数据,交互有两个部分:请求和响应。
请求:get、post、put、delete。
请求部分一般包含的内容:
1、请求行:请求方式、请求地址和协议。
2、请求头:HTTP协议使用HTTP头来传递请求的元信息。HTTP头是一个用冒号分隔的名称/值对,冒号前面是HTTP头发名称,后面是HTTP的值。
例如:
-
accept:application/json ---客户端可以接收的数据格式
-
X-Requested-with:XMLHttpRequest --异步请求
-
user-agent: --客户端的用户
-
Host:--请求的主机地址
-
cookie:--cookie信息(请求的)
-
accept-encoding: gzip, deflate, br--压缩方式
3、空行:发送回车符和退行,通知服务器以下不再有请求头。
4、消息体:HTTP请求中带有查询字符串时,如果是GET方法,查询字符或表单数据附加值请求行中,则消息体中就没有内容;如果是POST方法,查询字符串或表单数据及添加在消息体中。
响应,这里介绍一下响应状态码:
2xx:表示请求发送成功;
3xx:表示资源发生转移,俗称重定向;
4xx: 表示接口的路径找不到,客户端错误;
5xx:表示系统内部异常,一般存在接口缺陷或者请求内容不正确,服务器错误。
响应的部分
1、响应行:协议、响应码、响应信息
2、响应头:
-
server:nginx --服务
-
date ---时间
-
content-type: application/json;charset=UTF-8
-
set-cookie: --响应的
3、 空一行
4、响应的具体内容
最后:下方这份完整的软件测试视频学习教程已经整理上传完成,朋友们如果需要可以自行免费领取【保证100%免费】
软件测试面试文档
我们学习必然是为了找到高薪的工作,下面这些面试题是来自阿里、腾讯、字节等一线互联网大厂最新的面试资料,并且有字节大佬给出了权威的解答,刷完这一套面试资料相信大家都能找到满意的工作。
获取方式:QQ社区:902061117
这些资料,对于【软件测试】的朋友来说应该是最全面最完整的备战仓库,这个仓库也陪伴上万个测试工程师们走过最艰难的路程,希望也能帮助到你!