1.什么是接口测试?
接口通常说的API(Application Programing Interface,应用程序接口)是一些预先定义的函数,或指软件系统不同组成部分衔接的约定。简单来说,接口就是将一些复杂的操作封装起来方便其他程序调用,调用的形式可以是本地函数,也可以是网络请求。
接口测试:主要用于测试系统与外部其他系统之间的接口,以及系统内部各个子模块之间的接口。测试的中电是检查接口参数传递的正确性,接口功能实现的正确性,输出结果的正确性,以及各种异常情况的容错处理的完整性和合理性。通常我们主要测试时一http协议进行接口测试。
接口测试步骤:
- 准备测试数据(非必须)
- 请求接口
- 验证请求后的响应结果
2.接口请求demo:
3.请求消息接口结构:
请求行、请求头、空行、请求数据
4.请求方法:
- get:请求指定的信息,并返回实体主题;
- Head:类似GET请求,子不过返回的响应中没有具体的内容,用于获取报文;
- post:向指定资源提交数据(例如提交表单或者上传文件),数据包含在请求体中;
- put:从客户端向服务器传送的数据更新指定的内容;
- delete:请求服务器删除指定内容;
- connect:预留给能够将链接改为管道方式的代理服务器,如使用ssl;
- options:查看服务器的性能;
- trace:回显服务器收到的请求,主要用于测试或诊断;
- patch:对put方法补充,用来对已知资源进行局部更新;
5.服务器状态码:
- 200:ok;服务器成功返回用户请求的数据,该操作是幂等的;
- 201created-【post/put/patch】:用户新建或修改数据成功的;
- 202Accepted:表示一个请求已经进入后台排队;
- 204 not content:-delete:数据删除成功;
- 300(多种选择) 服务器根据请求可执行多种操作。服务器可根据请求者 来选择一项操作,或提供操作列表供其选择
- 301(永久移动) 请求的网页已被永久移动到新位置。服务器返回此响应时,会自动将请求者转到新位置。您应使用此代码通知搜索引擎蜘蛛网页或网站已被永久移动到新位置。
- 302(临时移动) 服务器目前正从不同位置的网页响应请求,但请求者应继续使用原有位置来进行以后的请求。会自动将请求者转到不同的位置。但由于搜索引擎会继续抓取原有位置并将其编入索引,因此您不应使用此代码来告诉搜索引擎页面或网站已被移动。
-
303(查看其他位置) 当请求者应对不同的位置进行单独的 GET 请求以检索响应时,服务器会返回此代码。对于除 HEAD 请求之外的所有请求,服务器会自动转到其他位置。
- 304(未修改) 自从上次请求后,请求的网页未被修改过。服务器返回此响应时,不会返回网页内容。
-
305(使用代理) 请求者只能使用代理访问请求的网页。如果服务器返回此响应,那么,服务器还会指明请求者应当使用的代理。
- 307(临时重定向) 服务器目前正从不同位置的网页响应请求,但请求者应继续使用原有位置来进行以后的请求。会自动将请求者转到不同的位置。但由于搜索引擎会继续抓取原有位置并将其编入索引,因此您不应使用此代码来告诉搜索引擎某个页面或网站已被移动。
- 401 INvalid request-【post/put/patch】用户没有权限,用户新建或修改数据成功的;
- 403forbiden:用户得到授权,但是访问被拒绝。
- 404 not found:用户发出的请求针对的是不存在的记录,服务器没有进行该操作;
- 500:internal sever error:服务器发生错误,用户无法判断发生是否成功;
汇总如下:
- 201-206都表示服务器成功处理了请求的状态代码,说明网页可以正常访问;
- 300-3007表示的意思是:要完成请求,您需要进一步进行操作。通常,这些状态代码是永远重定向的。
- 4XXHTTP状态码表示请求可能出错,会妨碍服务器的处理。
- 500至505表示的意思是:服务器在尝试处理请求时发生内部错误。这些错误可能是服务器本身的错误,而不是请求出错。