共计 3014 个字符,预计需要花费 8 分钟才能阅读完成。
前言
把握了 http 协定,就把握了接口测试
笔者在网络上看过不少接口测试教程,一上来就开始讲怎么操作工具,而不通知读者为什么要这么操作。读者可能照猫画虎胜利了,也可能操作失败了但不知为何出错。
因而,本文作为接口测试的入门第一课首先会给大家理解到执行接口测试每一步操作的目标和原理,由此大家能力从实践到实际上把握接口测试,并且纯熟之后有本人的创造性施展。
本文所用的接口测试工具为 Apifox,请大家在往下读之前先装置注册好工具。
Apifox 官网下载地址:http://www.apifox.cn
目录
接口测试测什么
接口测试的对象:服务器接口
服务器接口与前端通信的形式:http 协定
Apifox 接口测试原理
用 Apifox 构建第一个接口申请
注释
一. 接口测试测什么
接口测试次要是测试零碎 组件间接口的一种测试,次要用于测试服务器与前端(web 浏览器,APP)之间的数据交互接口。测试的重点是要查看接口参数传递的正确性,接口性能实现的正确性,输入后果的正确性,以及对各种异常情况的容错解决的完整性和合理性。
由引文对接口测试的定义可得,接口测试的对象是服务器接口,接口测试的内容包含:接口参数检验,接口性能实现是否正确,接口异常情况容错解决。
接口测试的内容是《Apifox 接口测试》系列教程前面的内容,本文次要解说服务器接口,前端如何通过 http 协定与服务器通信,Apifox 等接口测试工具如何实现接口测试。
二. 接口测试的对象:服务器接口
API 指的是一组事后定义好的函数,来让零碎或内部的其余组件能够执行它外部实现的性能,但又毋庸拜访源代码或者了解其外部逻辑。
在需要开发过程中,前后端拆散开发,两端的研发人员会独特定义好接口,编写接口文档,尔后的开发过程中须要遵循这份协定文档。
因而接口测试也是一种黑盒测试,测试人员须要依据接口文档来对服务器 Api 进行测试,来检测约定的性能是否正确实现,是否有对异常情况做容错解决。
而接口文档的编写是根据前后端数据传输的协定——Http 协定进行的。
要会用接口文档,首先先了解 http 协定。
三. 服务器接口与前端通信的形式:http 协定
服务器和前端通过相互发送 http 报文实现数据交互。本大节将介绍如何创立 http 报文,以及如何了解报文的每一个局部,理解完就能够把握接口测试的根底内容。
http 报文的三个组成部分 http 报文是一个格式化数据块。报文类型包含客户端申请,服务器响应。它们由 3 个局部组成:
起始行(start line)对报文进行形容
首部块(header)蕴含属性 Content-Type:Content-Length:主体(body)蕴含文本或二进制数据,能够为空
申请报文的格局
<method><request-URL><version>
<headers>
<entity-body>
响应报文的格局
<version><status><reason-phrase>
<headers>
<entity-body>
各个字段的含意如下:
办法(method):前端心愿对服务器执行的操作,蕴含 get,post,put,delete 等办法;
办法 性能
GET 从服务器获取数据
POST 向服务器发送要解决的数据
HEAD 只从服务器获取文档的首部
DELETE 从服务器上删除数据
PUT 向服务器提交数据
申请 url(request-URL): 所申请资源门路,通过它可找到资源搁置的地位。格局相似于:https://www.apifox.cn/help/ap…
版本(version): 报文所应用的 http 版本,格局相似于:HTTP/1.0
首部(headers):能够有 0 个或多个首部,常见的首部如下:常见的首部
实体主体(entity-body): 蕴含一个数据块,反对多种数据格式,如 html 页面,图片,视频,源代码等等。
状态码(status-code):形容申请后果,胜利或者失败。
起因短语(reason-phrase): 起因短语是状态码的可读版本,只对人类有意义。
这些字段初学者会感觉十分形象难以了解和记忆,但当前面接触到 api 文档和用 apifox 做接口测试的时候,就会顿悟——api 文档里的参数和办法,url 的含意和接口测试界面每个空格要填什么,返回值代表什么含意。
请急躁持续往下读。
四. 读懂 API 文档
对于测试人员,筹备接口测试所须要的文档有产品需要文档 +API 文档。
需要文档用于梳理接口为何这么设计、是否正当;
针对单个接口,接口文档用于获取:接口形容,申请阐明,返回阐明。
以百度凋谢 API,文字辨认接口为例:咱们想要应用它的文本辨认性能,须要去调用它的接口,那么须要理解发动这个文本辨认接口申请,每个字段须要填什么内容。
* 注:Apifox 的 ApiHub 中,收集了大量凋谢的 API,初学者可选取某个 api 深刻理解接口文档,或作为接口测试的练习物料,留神有些接口须要先获取应用权限。
Api Hub 收集的凋谢 API
五.Apifox 接口测试原理
对于服务器来说,Apifox 也是一个前端,只不过其余前端的接口申请由研发人员在代码里封装好,在特定条件下被触发发动申请,而 Apifox 中,接口申请由用户手动封装,手动发动。
Apifox 界面
Apifox 界面
看完 Apifox 接口测试的界面,读者想必能发现,整个界面就是让读者手动构建出一个 http 申请进去,上两节咱们讲的形象的 http 协定终于落了地。
因而一个最根底的 http 接口测试所须要做的步骤就是手动填写实现并收回一个 http 申请,校验参数。
step1. 抉择申请办法 -> 填写申请 url-> 填写 url 参数 -> 填写 body 参数和 header 参数(如果有)
step2. 手动发送申请
step3. 查看返回参数是否失常,是否合乎接口文档的约定
用 Apifox 构建你第一个测试申请
在铺垫完上述那么多实践根底之后,大家终于能够开始上手应用 apifox 来做接口测试了。
练习 1:用 get 申请获取 html 页面
step1:在 apifox 的新建接口 tab 输出“http://www.baidu.com”, 申请办法抉择 GET,header 参数,url 参数,body 参数均为空,接着点击 send 按钮。step2:查看返回值,能够看到申请回来的数据是一个 html 页面,即百度首页,咱们点击‘preview’按钮,能够看到一个残缺的页面显示进去
练习 2:获取百度凋谢 API 的 acess_token,即取得应用 api 的受权
step1:查看百度凋谢 api 获取 acess_token 的接口文档,获取申请办法和申请参数
接口文档形容
step2:依据接口文档形容的,在 apifox 接口测试界面抉择 post 办法,在 params 里填写 3 个申请参数,(client_id 和 client_secret 须要创立利用后能力取得,没有能够先去创立)
填写申请参数
填写申请参数
step3:点击下方理论申请 tab,能够看到 apifox 理论收回的接口申请模式 如下:apifox 收回理论申请
step4:查看返回参数可看到返回了咱们须要的 acess_token 字段:
练习实现。大家能够利用本人公司外部的接口文档 / 内部凋谢 api 持续进行练习坚固。
复习题
1. 写出 http 协定申请报文和相应报文的格局,并阐明每个字段的含意。
2.api 文档有哪几局部组成,在接口测试中别离施展什么作用
3. 复述用 Apifox 做简略接口测试的步骤。
*《Apifox 接口测试教程》系列教程连载中,敬请期待!