0%

接口回归场景测试总结

单个场景测试用例设计

参考:http://www.softtest.com/test/case/13097.html

一、自动化测试

  • 自动化维护的成本:自动化能够提高用例执行速度和覆盖度;需要投入时间成本(比如执行环境的维护、测试脚本维护、问题的跟进修复)。有时需要开发的配合或者有时需要绕开软件自身的逻辑来保证自动化执行的效果。
  • 自动化目前的应用范围:目前,大部分自动化需要明确的输入来验证明确的输出,这个特性决定了它只能做回归测试。
  • 自动化无法进行探索性测试:比如前几天我测试一个逻辑 A,在检测日志信息时,偶尔发现了另一个逻辑的日志有点异常,于是就去跟进了一下,从而发现了一个问题,如果是自动化,他根本不可能在测试 A 逻辑的时候还去关注 B 逻辑的问题。

    二、基于场景的接口测试用例设计流程

  • 自动化测试
    1577345226(1)

    三、简单场景实例(回帖)

3.1 画流程图
1577345329(1)
3.2 根据流程图,梳理出具体的场景

  • 场景1: 首页获取帖子列表 》选择某个帖子 》获取帖子详情 》不回帖

  • 场景2: 首页获取帖子列表 》选择某个帖子 》获取帖子详情 》回帖 》未登陆

  • 场景3: 首页获取帖子列表 》选择某个忒子 》获取帖子详情 》回帖 》登陆 》回帖成功

综合覆盖的路径,场景三的路径已经覆盖了场景一和二的路径,所以场景一和场景二可以去掉,剩余场景三为有效场景

3.3 根据场景,梳理调用的接口

场景3: 获取帖子列表接口 》获取单个帖子详情接口 》调用回帖接口 》调用登陆接口 》调用回帖,回帖成功
3.4 编写用例
1577345486(1)

针对整个系统设计

参考:https://testerhome.com/topics/19643
接口测试当中数据准备工作需要消耗较大工作量,而接口的功能,大体上可以分为增删改查几类功能,本文简单介绍一下这几种功能的接口脚本设计思路,主要是涉及数据准备的一些思路,目的是减少冗余的数据准备,同时减少由于接口脚本导致测试环境脏数据的出现。

  • 增:接口的功能是在服务器数据库里新增一些数据,为了避免脚本重复执行时不断插入新数据、同时为了避免准备的数据过多或者冲突,建议在脚本中包含以下操作
    a. 查询数据库中是否已存在准备新增的数据,如果有的话,需要删除;
    b. 使用准备好的数据调用待测接口进行新增操作;
    c. 断言中检查数据库中是否成功新增了测试数据;
    d. 第三步成功的话需要在数据库中删除测试数据以便后续重复执行该脚本;

  • 删:接口的功能是在服务器数据库里删除一些数据,建议脚本包含以下操作
    a. 查询数据库中是否存在待删除数据;
    b. 如果不存在的话,需要先新增;
    c. 调用待测接口进行删除操作;
    d. 断言判断是否删除成功;

  • 改:接口的功能是在服务器数据库里修改一些数据,为了确保数据库中存在待修改数据、脚本可重复执行,建议在脚本中包含以下操作
    a. 查询数据库中是否已存在待修改的数据,如果没有的话,需要新增待修改的数据;
    b. 调用待测接口进行修改操作;
    c. 断言检查数据库中是否成功修改了测试数据;
    d. 第三步成功的话需要在数据库中把数据修改恢复成原数据以便后续重复执行该脚本;

  • 查:接口的功能是在服务器数据库里查询出一些数据,这在四种类型中是最简单的一种,正常不需要修改数据库,建议脚本包含以下操作
    a. 为了确保数据库中有待查数据,先查询是否存在待查数据;
    b. 如果不存在的话,需要先新增;
    c. 调用待测接口进行查询操作;
    d. 断言判断查询出的结果与上面步骤中从数据库查出的结果完全一致;

其他参考:https://blog.csdn.net/jiangshangchunjiezi/article/details/97525990
(主要是公共参数的管理)