谈到接口自动化测试得时候,很多时候 会有2派观点:

第1种 :你们用什么接口自动化测试框架来做 接口测试???。。。。。。你们用得框架很low啊!

第2种:你们为什么要做接口自动化测试呢? 

本人就属于第2种,我不想跟大家探讨用什么接口自动化测试框架,因为讨论用啥框架好 没有意义,黑猫白猫 捉到老鼠就是好猫!我们工作得目标是什么?不是为了研究技术而去做一件事,而是在完成一个工作目标中去磨练提升技术。

那我们为什么要做接口自动化测试呢?

我这里主要是为了解决3个问题:

1、监控 不同测试环境 与  测试版本下 接口是否正常? 确定测试环境经过无数版本得迭代后,测试环境下版本得主流程 是否还是正常得

2、为了提升 回归测试得效率,因为我们站在业务逻辑层面来看接口测试,其实就是在接口层面 对 这个接口涉及到 功能进行测试验证

3、为了测试前移,我们可以在开发联调阶段 参与到接口测试中,这样可以提前发现 一些Bug;确保在 开发阶段中就解决掉一些 Bug

 

接口测试 实施的难点体现在哪里呢?

1、接口测试用例的规划:我们的接口测试用例 应该要根据目的 来划分  接口本身的用例、接口功能层面的用例、业务流程串起来的用例  等3个层面的用例 分别设计。

2、我们做接口测试时,需要对 2种类型的数据进行断言(一种是 新增类 往数据库写入的 接口,另外一种是 查询类 往数据库中读的 接口),我们要确保 写入的数据  和  响应结果返回的数据 正确性;这时就需要从数据库中取值进行对比;

有些涉及到计算公式计算的,我们也需要拿数据进行计算后 再进行断言比较。

3、我们有必要对我们 测试过的 接口 进行数据清洗,只有数据清洗了,才方便下次接口调用时 测试数据的重复使用。

4、对于接口参数比较多的接口 测试时,传参比较多,构建测试数据 比较繁杂。

5、我们从整个业务流程角度来看,我们需要梳理清楚 接口之间的依赖关系,以及接口之间的调用关系。

6、有些接口执行完后,不会马上有结果,因为有些需要定时任务去批量执行,这时我们需要考虑到 定时任务执行后,保存到数据库中的最终数据结果。

 

xiezhifei