匿名职言 做个调查,你们的接口自动化怎么做的,代码方式还是测试平台方式,效果怎么样

田瑞霖 · 2020年11月27日 · 最后由 Jerry li 回复于 2020年11月30日 · 2024 次阅读

做个调查,你们的接口自动化怎么做的,代码方式还是测试平台方式,效果怎么样

1、接口自动化实现方式
纯代码、关键字加 excel 封装方式、接口自动化测试平台、行为驱动 or 自然语言等其他方式

2、接口自动化痛点怎么处理
多环境切换,前置数据处理,上下文数据依赖,关键步骤封转等

3、最终效果怎么样
用例规模数,执行成功率,发现问题数,节省多少人力,提升版本发布效率等

共收到 9 条回复 时间 点赞

1.pytest+requests+allure, 集成放在 jenkins 执行,纯代码

  1. 环境切换:启动命令传人对应的环境标志,执行对应环境的数据;前置数据放在 setup 里面;不同接口间的数据通过接口调用来获取
  2. 用例数从年初的 0 到现在有三百多条,成功率 80 到 90 左右,看项目进展和环境稳定的情况

1.测试平台
2.500 个接口左右
3.接口只搞正向测试,一两个用例。
4.还有一些冒烟流程的用例,这个步骤比较多,十几个接口连在一起。这种用例不多,就 20 个左右。

1、restassured+testng+extentReport,集成放在 jenkins 运行,纯代码

2、
多环境切换:接口测试框架支持多种环境配置,通过 env(类似 spring 的 profile )切换用不同的配置
前置数据处理:弄了个工具类自动生成一些需要用到的随机数据,比如手机号、地址等(信贷类业务)
上下文数据依赖:基本都是流程类测试,弄了一个类直接里面自动配置好整个流程需要用到的外部传入数据,用例里面按需获取
关键步骤封转:不知道你这个什么意思,如果说是怎么封装,我们采用了三层结构,底层是单个服务提供接口调用方法;中层是串起来的流程,后者基于前者扩展(比如 a-b-c 三个步骤,会 a-b 放到函数 d 里,然后 d-c 形成新函数);顶层是用例,用例调用底层和中层的方法进行测试。

3、用例数大概几十个,主要是主流程用例,大概调用十几个接口。基本没有单接口参数组合的用例(对我们业务单接口意义不大,而且大部分开发直接用 JSR303 做参数的基本校验,所以直接 review 代码效率更高)。成功率在 90% 以上,发现十几个开发过程中多个导致环境主流程不同的问题,让环境出问题后排查效率提升到 30 分钟内(用例每 30 分钟会执行一遍,失败会直接通知),而稳定的环境和自动化的主流程回归,让交付速度提升 10% 左右吧(最占时间的还是新功能测试本身,最有效的手段还是缩小需求规模)。

纯代码 Java+jsoup+jenkins +testng ,无需切换环境, 在 jenkins 上 job 配置不同的环境参数,一套代码; 虽是一套代码,不同的环境,执行不同的用例,如:测试环境执行用例 100% ,线上环境可能只执行 60%;

用例数看项目,最少的在 100+,数据都采用随机生成...

单接口,业务流程都有,基本每个页面的接口都有写;

龙立诚 回复

接口测试稳定后居然达不到接近 100%?为啥?

1 我们一直是迭代开发,一直有新的功能开发和调整,所以有些用例会失败

  1. 有些用例对环境依赖比较大,而我们后台的环境比较复杂,所以是不是都会有一些用例因为这个原因失败
龙立诚 回复

我们也是一直迭代开发。。一直很纠结要不要做自动化

杨晓啸 回复

为啥不做啊?迭代的话更需要做自动化啊,不然每次回归多大工作量啊

需要 登录 后方可回复, 如果你还没有账号请点击这里 注册