作者:当官的好办事_625 | 来源:互联网 | 2023-07-15 19:18
目录
前言:
服务端接口测试介绍
什么是服务端?
什么是接口?
什么是接口测试?
为什么要做接口测试?
如何做接口测试?
接口测试自动化介绍
为什么是接口测试自动化?
为什么要做接口测试自动化?
接口测试自动化的规范
接口测试自动化框架选型
总结:
前言:
本文包含了我在接口测试领域的一些方法和心得,希望大家一起讨论和分享,内容包括但不仅限于:
- 服务端接口测试介绍
- 接口测试自动化介绍
- 接口测试自动化实践
- 关于接口测试自动化的思考和总结
服务端接口测试介绍
什么是服务端?
一般所说的服务端是指为用户在 APP 或 PC 使用的互联网功能提供数据服务的背后的一切。以天猫精灵智能音箱系列的产品链路为例,服务端便是网关(包括网关在内)之后的链路。
什么是接口?
官方点说,是计算机系统中两个独立的部件进行信息交换的共享边界。通俗点说,就是服务端对外提供数据服务最常用的信息交换方式。提供数据服务的服务端是个可大可小的机构,做的事大多不止一件,它做了这么多事,最终的目标是给 APP 或其它调用方使用,于是服务端就派出了几个代表,比如 API1 负责提供用户信息,API2 负责提供设备信息,API3 负责提供播放的音频信息等等。同事,服务端规定好跟 API1 通讯的接头暗号是param1,param2…,跟 API2 通讯的接头暗号是 param3,param4…,而 params 就是接口参数,就是用来告诉服务端你要什么服务,具体的要求是什么。接口一般由三个部分组成:协议、地址及参数。
什么是接口测试?
一般讲的接口测试指的是对某个给定接口进行功能测试,输入不同的参数时,接口返回值是否正确。下图是经典的测试金字塔模型。
在这个模型中,越往下比例会占的越高,也就是说在一个产品测试中,单元测试比例是最高的,依次是接口测试和 UI 自动化测试,最顶端是人工测试部分。服务端接口测试在中部,承上启下,由此可见其重要性。
为什么要做接口测试?
一般做接口测试有如下原因:
- 接口是服务端对外提供数据服务最常用的信息交换方式,接口大部分内容都是数据,通过数据对比我们可以推测到系统的逻辑,测接口其实也就是测逻辑。
- 接口测试相对容易实现自动化,也容易实现持续集成,且相对 UI 自动化也比较稳定,可以减少人工回归测试人力成本与时间,缩短测试周期,支持后端快速发版需求。
如何做接口测试?
前面提到,接口是由这几个组成部分:接口地址、请求协议、请求参数和预期结果。测试接口的步骤一般步骤是:发送请求->解析结果->验证结果。
简单来说,接口测试就是参照接口文档,调用接口,看结果的返回是否跟文档说明一致;另外,再测试一下接口对异常逻辑的处理比如非法参数或边界值。
深入来说,接口测试的关注重点在于:
一、接口的数据逻辑是否正确。 我们需要充分理解接口的功能,内部是什么样的数据逻辑,它与上下游交换了那些信息或资源,不单纯地停留在参数调用和程序返回的表象数据。通俗地说,就是要知道这个接口是干什么用的,用到哪里,每次调用会发生什么,然后去检验改发生的有没有发生。
二、接口对于异常参数的处理机制与上下游服务的容错。 如下图所示,被测接口 A 依赖上游服务 A,那么服务A异常的时候被测接口是否很好的容错就很重要,否则服务挂起或宕掉都是有可能的。另外,作为服务提供方接口 B,应当要充分兼容不同的使用场景、或不同版本的调用方的使用,不能为了服务 E 做的需求,除了E其它的服务使用者都用不了了。总的来说,原则就是 “上游不可靠,下游要兼容” 。
总结:
感谢大家的阅读,在这里我总结了自己学习接口测试、自动化测试的全部资料,感兴趣的可以添加下方群聊免费领取,祝大家都能学有所成。记得点击领取哦