引言
除了测试单个接口,我们常常需要对多个有数据或者逻辑关联的接口进行业务流程测试,例如获取验证码-注册-登录。传统测试业务流程需要编写一系列测试代码,现在通过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,高效、专业、规范,让接口管理更加简单!