接口测试(基础篇)

本文深入讲解接口测试的概念、目的、原理、重点、用例设计、分类分析方法,以及常用的测试工具,帮助读者全面理解接口测试的技术细节。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

一.什么是接口

我们常说的接口分为两种
1,API——应用程序编程接口
在这里插入图片描述
2.GUI——图形用户界面
在这里插入图片描述

二.接口测试的目的和原理

目的:测试接口的正确性和稳定性(持续集成是接口测试的核心)
原理:模拟客户端向服务器发送请求报文,服务器接收请求报文后对相应的报文做处理并向客户端返回应答,客户端接收应答的一个过程。
在这里插入图片描述

三.接口测试的重点和用例设计

重点:
检查数据的交换,传递和控制管理过程,还包括处理的次数
用例设计考虑:
数据进入系统接口(调用外部系统的参数为本系统使用)
数据流出系统接口(验证系统处理后的数据是否正常)

四.接口分类和分析方法(摘录)

1、功能分类
1)功能间接口:系统中功能模块间的接口,比如:ERP系统中采购模块和库存模块之间的接口
特点:一般部署在同一个服务器中,并且使用同一个数据库。
测试方法:通常采用黑盒测试方法,注意接口数据在不同模块间的走向;尤其是接口间的逻辑控制关系。
例如:销售发货,检查库存可用量,如可用量不足,则不允许发货。
2)系统间接口:不同系统间的接口,比如:银行的各个系统间的接口。核心系统和各个外围系统之间都是此类接口。
特点:部署在不同服务器上,不仅采用不同的数据库,而且数据库类型还有可能不同。
测试方法:通常采用白盒测试方法,关注系统间接口的实现方式。
例如:接口文件类型、接口文件格式、接口文件处理方式等。

2、类型分类
1)业务接口:系统或功能间有业务逻辑关系,比如:ERP系统中,采购入库后,会生成库存入库单,影响可用量等,也可称为:联机接口。
特点:接口间有业务逻辑的上下游关系,可能会涉及跨系统或者模块的逻辑控制,以及反向操作。
测试方法:通常黑盒测试方法,注重分析业务逻辑,采用路径覆盖法分析,重点:注意正向反向操作的测试。
2)数据接口:接口数据有上下游关系,比如:企业征信系统,要通过数据交换平台获取核心系统的数据,也可称为:批量接口。
特点:系统间只存在数据的上下游关系,而且都是进行批量处理
测试方法:通常采用白盒测试方法,关注数据的文件格式,以及记录数及内容是否正确,还要考虑数据加密问题。

3、数据方向分类
1)单向接口:数据在接口中是单向流动,但根据实现方式分为单项推或单项取。
比如:数据仓库和各系统间的接口基本都是单项的,一方面前端系统向数据仓库推送数据,一方面后端系统从数据仓库取数据仓库提供的数据。
特点:不管是单向推还是单项取,都会有一个FTP地址,存放指定数据文件,并且有定时存取规则,可从日志中查看结果。
测试方法:通常采用黑盒白盒结合的测试方法,着重数据文件格式,是否按照规则存取等。
2)双向接口:两个系统间的数据有往来,比如:综合报文处理系统和核心系统,从何报文处理系统即接受核心系统发送的数据,又要将处理结果反馈给核心系统。
特点:可以将不同数据方向的接口分开分析,当做两个单项接口,注意来往数据通常具有关联性。
测试方法:通常采用黑盒白盒结合的测试方法,注重来往数据的关联性,合理设计测试数据,制定测试执行计划。

4、数据读写方式分类
1)单独读写接口:数据在接口中不仅单项流动,而且都是读或者写的单独操作,比如:前面提到的各系统和数据仓库的数据交换。
特点:与单项接口相似
测试方法:黑盒白盒相结合的方法,注意读写的权限,以及单接口功能未正常实现时,系统是否有异常处理机制。
2)即读又写接口:系统间接口处理时,即读取又写入,比如:贷款合同管理和核心系统,先读取核心系统中的合同信息,添加合同成功后,又将合同编号回写到核心系统中。
特点:一般都是业务类接口,非数据类接口,并且都有逻辑控制的要求
测试方法:通常采用黑盒测试方法,注意业务逻辑控制,不仅要检查读取的数据是否正确,还要检查回填数据是否正确。

5、层级分类
1)直接(联机)接口:系统或模块间的接口是直接联通的
特点:直接联通
测试方法:黑盒白盒相结合的方法,根据接口特征分析即可
2)间接(非联机)接口:系统间接口不是直接联通,通过第三方中转后,才进行连接,比如:综合报文系统和核心系统,中间隔着一个ESB。
特点:接口间的中间层,会进行处理,才会将数据发送到接口系统,这个不会涉及业务逻辑,只是数据格式转换。
测试方法:黑盒白盒相结合的方法,可直接忽略中间层的存在,设计测试用例;但出现问题时,一定要注意中间层处理是否正确,并且,测试中间层异常时,系统处理是否正确。

五.接口测试的工具

1、loadrunner:一款商业性能测试工具,用来做接口测试,很好很强大

2、jmeter:一款开源的性能测试工具,操作简单,方便,既有jdbc request操作数据库数据,也有http request和soap request应对测试

3、poster:火狐浏览器自带接口测试工具,插件中安装即可,界面简单明了,容易上手

4、postman:谷歌浏览器的扩展工具,谷歌商店中选中安装,界面同poster差别不大,界面简洁

5、soapui:开源测试工具,通过soap/http来检查、调用、实现Web Service的功能/负载/符合性测试;
该工具既可作为一个单独的接口测试工具使用,也可利用插件集成到Eclipse,maven2.X,Netbeans 和intellij中使用。

六.面试四问

1什么是接口(自己的话描述)
模块之间的调用和联系的入口和出口

2接口类型(你测试过什么接口)
内部和外部比较
http和webserver的比较

3为什么要做接口测试
1)测试工程师可以尽早介入项目
2)检验前后端的校验(安全性)
3)项目未完成,可以利用接口提功测试数据

4测试用例的设计
1)必填项和选填项的考虑
2)数据本身录入的要求

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值