warden的博客

warden的个人博客,现担任eoLinker技术开发,不定时更新eoLinker产品信息、行业新闻、个人技术心得等。eoLinker是目前全球领先、国内最大的在线API接口管理平台,提供自动生成AP...

使用eoLinker进行API接口自动化测试——高级模式(代码)

eoLinker是目前第一个支持在线API自动化测试的平台,eoLinker AMS提供了两种自动化测试方案:
1.简易模式:全UI界面,无需编写任何代码即可完成稍复杂的API测试工作
2.高级模式:代码界面,通过编写极少的Javascript代码,即可实现强大的API自动化测试

一般而言,自动化测试涉及以下几个方面:
1.自由设定API测试顺序;
2.API之间存在数据关联,比如后面接口的请求参数会绑定前面接口的返回结果等;
3.支持对返回结果进行校验;
4.支持对数据进行处理,比如在测试登录接口时对密码进行加密等;
5.支持高级的代码用例,可以用代码来实现控制测试流程的目的,一般语言有js;
6.eoLinker支持上述提到的所有功能,并且是目前全球唯一一款支持UI界面创建自动化测试的产品,用于自动化测试非常方便,并且用户体验相比于Postman等工具要好许多。

本篇主要用于记录高级(代码)模式的自动化测试。高级自动化测试教程:请点击这里
图片描述

一.单例和用例

单例 是自动化测试下面的一个基本单位,通俗地讲,单例 也就是“单个API的测试条件和结果”。比如有一个用户登录接口,传递abc和123作为请求参数,然后返回”OK”作为成功的结果。

用例 则是多个单例的合集,一个用例可以包含1~无限个的单例,并且把这些 单例 按顺序组合起来。比如测试完整的用户登录流程(注册-登录-判断登录状态-退出登录)。

注意:在高级模式中,单例 将以代码的形式集中在用例 中,因此形式上看并不像简易模式中拥有明显的单例和用例的概念。 我们在用例列表页面,新增用例时选择用例类型为 高级[代码模式] 即可创建一个高级用例:

图片描述

二.环境变量

和Postman一样,eoLinker也提供了环境变量的功能,帮助用户快速对测试API的环境进行切换,而不需要对API进行修改(比如开发和生产环境的参数和地址可能不同)。

不同的是,eoLinker的环境变量功能要更加强大,除了设置全局变量,eoLinker里面可以设定所有API的地址前缀、请求头部等信息。

在环境管理中创建好环境,在自动化测试的时候就可以根据不同的环境随时切换,非常方便。

三.创建用例

如果你已经在接口管理中把API信息录入完毕,那么在创建单例的时候可以直接将接口文档导入,节约绝大多数的时间。或者我们也可以手动去录入单例的信息。

其中包括:
1.API URL(url)
2.请求方式(method)
3.请求头部(headers)
4.请求参数(params)
5.超时设置(timelimit)

和简易模式不同的是,这些信息都将以Javascript代码的方式呈现出来。但是eoLinker拥有非常简单的API模板规则,因此只需要极少的代码即可完整地描述API信息(红色部分的代码):

图片描述

上图表示的API信息是:
请求url:https://www.eolinker.com
请求方式:POST
请求头部:空
请求参数:form-data类型(默认),name=hello,password=world
超时限制:300毫秒

执行请求后,判断结果是否等于”000000”,如果不等于,则使用eo.stop()输出错误信息并且中止测试,否则使用eo.info()输出提示信息并继续往下测试。

当所有测试均没有遇到eo.stop()以及意外终止(如no response、超时等错误)情况时,会判断为用例测试成功,否则失败。 所有的测试都会在测试结束之后弹出测试报告,方便核查:

图片描述

附录

eoLinker是一个针对开发人员需求而设计、免费而且开源的API接口管理平台,提供自动生成API文档、API自动化测试、Mock测试、权限管理、团队协作等功能,旨在解决由于前后端分离导致的开发效率低下问题,吸收了Postman以及RAP等接口管理产品的优点,提倡远程办公和敏捷开发,让开发者进行接口管理更加简单。

开源项目:https://www.eolinker.com/#/os/download(一言不合就开源开源开源)
Github:https://github.com/eolinker(开发不易,求star一下啊)
码云:https://gitee.com/eoLinker-API-Management
Coding:https://coding.net/u/eolinker/project
产品体验官网:https://www.eolinker.com (如果对接口有兴趣的或者工作中可能使用接口的大佬,推荐花几分钟了解一下,开源不易啊)

阅读更多
想对作者说点什么? 我来说一句

没有更多推荐了,返回首页

加入CSDN,享受更精准的内容推荐,与500万程序员共同成长!
关闭
关闭