引言

除了测试单个接口,我们常常需要对多个有数据或者逻辑关联的接口进行业务流程测试,例如获取验证码-注册-登录。传统测试业务流程需要编写一系列测试代码,现在通过eoLinker全UI界面,无需编写任何代码即可完成稍复杂的API测试。

关键词

流程化测试、自动化测试、数据关联

填写完接口文档后,我们往往要对多个有数据或者逻辑关联的接口进行API业务测试。精彩世界杯火热进行,现以为支持球队点赞业务来举个例子:

接口1 登录:在进行测试前我们需要先登录,将其返回的token字段作为后续接口的请求头字段。
接口2 获取球队列表:点赞之前我们需要先请求球队列表数组。
接口3 为球队点赞:将上一个接口的球队ID作为请求参数发送点赞请求。
接口4 退出登录:为了不影响浏览器的测试环境,我们需要退出登录将环境恢复到测试前。

如下图

若API文档已建立了相关的接口,在自动化普通UI模式下可以批量添加已有接口

接下来我会依次介绍如何处理复杂的参数、对返回值匹配、将上一个接口返回值作为请求参数值等等。

对请求参数进行处理

登录接口,我使用eoLinker内置的加密方法对请求参数userPassword进行MD5加密。

在请求前代码注入里,仅需要了解一些简单的对象赋值、for循环语法你就可以使用Javascript、Jquery对请求参数、请求头部等操作自如。

对返回参数进行匹配

对于接口2,我需要先对返回值进行判断,再决定自动化是否继续,eoLinker校验失败时默认停止测试。
校验规则:

  • statusCode为字符串000000
  • 列表中的第一个元素是中国队,teamID为数字1

eoLinker填写的校验规则:

填写匹配规则的过程中需要注意类型(string、int、boolean、float、array、object)以及层级关系。

上一个请求的返回值作为本次请求的请求参数

点赞喜欢的球队时,需要传递上一个接口返回的球队teamID。
获取球队列表的返回值:

第一步,填写接口2:获取球队列表的返回参数,为关联参数提供数据结构。

选中teamList的类型(选对了类型才能准确关联),增加子字段操作将teamName和teamID填入。

第二步,填写接口3:为球队点赞的请求参数。

点击后会出现以下弹框,选中teamID。

生成绑定值。

<response[11465].teamlist[0].teamid>是eoLinker规定的关联参数形式,使用单书名号包裹的返回值response[接口的关联ID(可在单例列表进行查看)].子参数。因为返回值的子参数teamList是数组,所以需要加元素序号,第一个元素为0,以此类推。关联参数可以在请求头部、请求体(form-data、raw),REST参数中使用。

测试报告

使用普通UI自动化模式,只需要动动鼠标就可以完成一系列的业务流程测试,生成详细的测试报告。

eoLinker,高效、专业、规范,让接口管理更加简单!

官方网站:https://www.eolinker.com

无需编写代码,API业务流程测试,零代码实现的更多相关文章

  1. 无需编写代码,用接口管理工具 eoLinker 高效完成API测试流程相关业务

    引言 作为开发人员,有时需要协助市场部门进行开发,比如在市场推广中,经常通过给用户赠送优惠券来提高复购率.这篇文章,将介绍如何使用接口管理工具 eoLinker 的自动化测试 [UI模式] 构建此业务 ...

  2. .NET Core TDD 前传: 编写易于测试的代码 -- 缝

    有时候不是我们不想做单元测试, 而是这代码写的实在是没法测试.... 举个例子, 如果一辆汽车在产出后没完成测试, 那么没人敢去驾驶它. 代码也是一样的, 如果项目未能进行该做的测试, 那么客户就不敢 ...

  3. Hadoop基础-MapReduce入门篇之编写简单的Wordcount测试代码

    Hadoop基础-MapReduce入门篇之编写简单的Wordcount测试代码 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 本文主要是记录一写我在学习MapReduce时的一些 ...

  4. .NET Core TDD 前传: 编写易于测试的代码 一 -- 缝

    转载于: https://www.cnblogs.com/cgzl/p/9365955.html 有时候不是我们不想做单元测试, 而是这代码写的实在是没法测试.... 举个例子, 如果一辆汽车在产出后 ...

  5. MySql数据库列表数据分页查询、全文检索API零代码实现

    数据条件查询和分页 前面文档主要介绍了元数据配置,包括表单定义和表关系管理,以及表单数据的录入,本文主要介绍数据查询和分页在crudapi中的实现. 概要 数据查询API 数据查询主要是指按照输入条件 ...

  6. API Studio 5.1.2 版本更新:加入全局搜索、支持批量测试API测试用例、读取代码注解生成文档支持Github与码云等

    最近在EOLINKER的开发任务繁重,许久在博客园没有更新产品动态了,经过这些日子,EOLINKER又有了长足的进步,增加了更多易用的功能,比如加入全局搜索.支持批量测试API测试用例.读取代码注解生 ...

  7. .NET Core TDD 前传: 编写易于测试的代码 -- 构建对象

    该系列第1篇: 讲述了如何创造"缝".  "缝"(seam)是需要知道的概念. 本文是第2篇, 介绍的是如何避免在构建对象时写出不易测试的代码. 本文的概念性内 ...

  8. .NET Core TDD 前传: 编写易于测试的代码 -- 依赖项

    第1篇: 讲述了如何创造"缝".  "缝"(seam)是需要知道的概念. 第2篇, 避免在构建对象时写出不易测试的代码. 本文是第3篇, 讲述依赖项和迪米特法则 ...

  9. .NET Core TDD 前传: 编写易于测试的代码 -- 全局状态

    第1篇: 讲述了如何创造"缝".  "缝"(seam)是需要知道的概念. 第2篇, 避免在构建对象时写出不易测试的代码. 第3篇, 依赖项和迪米特法则. 本文是 ...

随机推荐

  1. 创建hive整合hbase的表总结

    [Author]: kwu 创建hive整合hbase的表总结.例如以下两种方式: 1.创建hive表的同步创建hbase的表 CREATE TABLE stage.hbase_news_compan ...

  2. http get请求获取server返回的应答数据

    libcurl库中的參数CURLOPT_WRITEFUNCTION所设置的回调函数应该是这种: size_t fun_cb( char *ptr, size_t size, size_t nmemb, ...

  3. FZU 1894 志愿者选拔【单调队列】【monotone decreasing queue】

     Problem 1894 志愿者选拔 Accept: 1770    Submit: 5523 Time Limit: 1500 mSec    Memory Limit : 32768 KB  P ...

  4. ExtJs 下拉单联动,次级下拉框查询模式

    queryMode : 'local' 如果下拉框的值是本地数据,最好设定queryMode为local,这样可以提高用户的响应速度

  5. CreateWindowEx和CreateWindow的区别

    CreateWindowEx 函数功能:该函数创建一个具有扩展风格的重叠式窗口.弹出式窗口或子窗口,其他与 CreateWindow函数相同.关于创建窗口和其他参数的内容,请参看CreateWindo ...

  6. u-boot的内存分布和全局数据结构

    U-boot,除非在RAM中调试,一般情况下都是从flash中执行一段代码,然后将flash中储存的代码和数据搬移到ram中,然后跳转到ram中执行.当然这应该也是一般的bootloader的执行方式 ...

  7. 君正Ingenic X1000E_halley2 更改Logo

    有两种方法可以改变开机logo,编译进内核或者修改u-boot. <一>.编译进内核 一. 制作LOGO图片(可以使用gimp) 1. 制作一个.ppm格式图片(logo_tvu_clut ...

  8. Android Calendar的运用

    import java.text.DateFormat; import java.text.ParsePosition; import java.text.SimpleDateFormat; impo ...

  9. UESTC--1253--阿里巴巴和n个大盗 (博弈)

     阿里巴巴和n个大盗 Time Limit: 1000MS   Memory Limit: 65535KB   64bit IO Format: %lld & %llu Submit St ...

  10. SQL 导出表数据存储过程

    SET ANSI_NULLS ON GO SET QUOTED_IDENTIFIER ON GO -- ============================================= -- ...