前言

把握了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接口测试教程》系列教程连载中,敬请期待!