前言
首先,什么是接口呢?
接口通常分为两种,一种是程序内部的接口,另一种是系统对外的接口。
系统对外的接口
例如,你需要从其他网站或服务器获取资源或信息。对方不会直接把数据库共享给你,而是提供一个获取数据的方法,你可以通过引用这个接口来使用该方法,从而实现数据共享。像我们使用的app、网站,在进行数据处理时,都是通过接口来调用的。
程序内部的接口
这是指方法与方法之间、模块与模块之间的交互。例如,论坛系统有登录模块和发帖模块。要发帖,必须先登录,因此这两个模块需要进行交互。程序内部会抛出一个接口,供系统内部调用。
一、常见接口
1. WebService接口
- 通过SOAP协议和HTTP传输
- 请求报文和返回报文都是XML格式
- 测试工具:SoapUI、JMeter、LoadRunner等
2. HTTP API接口
- 通过HTTP协议和路径区分调用的方法
- 请求报文是key-value形式,返回报文通常是JSON格式
- 常用请求方法:GET和POST
- 测试工具:Postman、RESTClient、JMeter、LoadRunner等
二、前端和后端
在谈接口测试之前,先了解前端和后端。
前端
对于Web端:使用的网页和打开的网站,都是用HTML、CSS写的。
对于App端:我们用的app,比如Android或iOS上的app,主要显示页面和进行简单校验(如非空校验)。
前端的作用是展示页面,后端负责处理业务逻辑。例如,购物时,前端展示商品,后端处理扣款和订单生成。
后端
后端处理你购物时扣余额,发微博时分配账号等业务逻辑。
前端和后端的交互通过接口实现。
记住:前端负责貌美如花,后端负责挣钱养家。
三、什么是接口测试
接口测试是测试系统组件间接口的一种测试。主要用于检测外部系统与系统之间以及内部各个子系统之间的交互点。重点在于检查数据交换、传递和控制管理过程,以及系统间的逻辑依赖关系。
其实,接口测试很简单,比一般的功能测试还简单。找工作时,很多公司要求有接口测试经验,也有不少人问我什么是接口测试。所谓接口测试就是通过测试不同情况下的输入参数和相应的输出参数,判断接口是否符合功能性和安全性要求。
接口测试比功能测试简单,因为它不需要处理页面输入和前端交互,只需按照接口文档发送请求,检查返回结果即可。
四、接口组成
接口文档应包含以下内容:
- 接口说明
- 调用URL
- 请求方法(GET或POST)
- 请求参数、参数类型及说明