AREX 是一款开源的自动化测验东西渠道,根据 Java Agent 技能与比对技能,经过流量录制回放能力完成快速有用的回归测验。一起供给了接口测验、接口比对测验等丰富的自动化测验功用,无需编程能力也可快速上手。

AREX 能够经过 Docker-Compose 一键装置一切的根底服务组件。除此之外,AREX 也同步供给了在线试用渠道 AREX Demo,与官方发布的最新版本保持一致,无需布置一切的服务组件即可试用,大大削减了试用吃力度。

本文将介绍试用 AREX Demo 渠道中接口测验功用及回放测验功用的详细操作步骤。希望经过本文,为我们供给一种完成高效自动化回归测验的新思路

拜访 AREX Demo 环境

运用 Chrome 浏览器拜访 AREX Demo 环境:demo.arextest.com/,初次登录需求进行注册…

自动化回归测试工具—— AREX 上手实践

输入邮箱后,点击 Send Code 按钮, 稍后邮箱将接收到 AREX 发送的登录验证码,如下图,将验证码填入即可登录。

自动化回归测试工具—— AREX 上手实践

登录后,进入 AREX Demo 的前端页面,如下图所示:

自动化回归测试工具—— AREX 上手实践

页面包含 Work Space 办理区域、接口测验(Collection)、回放测验(Replay)、环境装备(Environment)和运用装备(AppSetting)、用户操作装备等部分,详见 AREX 官方文档。

Chrome 插件装置

因为浏览器拜访跨域名服务受限,在运用 AREX 接口测验功用前,需求装置 Chrome 插件,经过插件完成对外恳求接口。

拜访 Chrome Web Store,在搜索框中输入 AREX,增加 Arex Chrome Extension。如下图:

自动化回归测试工具—— AREX 上手实践

如无法拜访 Web Store,能够直接下载最新的插件包到本地进行装置,当前最新的插件版本是 v1.0.45。

自动化回归测试工具—— AREX 上手实践

至此,一切的前期准备工作完成,接下来将介绍怎么运用 AREX 的接口测验及录制回放功用。

运用 AREX 进行接口测验

本文中验证功用运用的是由官方供给的模仿服务 AREX-Community-test,Demo 环境中该服务接口暴露地址是 demo.arextest.com:18080。

  1. Collection 中新建一个名为 “Demo-Community-Test” 的集合,用以创建接口恳求。

自动化回归测试工具—— AREX 上手实践

  1. 在 “Demo-Community-Test” 集合右侧下拉菜单中挑选 Add Request,新增一个恳求,并挑选恳求方式为 GET

    1. 输入接口途径 http://{{arex_host}}/nettyTest/nettyTest ,其间 {{arex_host}} 是参数名为 arex_host, 值为 demo.arextest.com:18080 环境变量,需提早在 Environment 中进行装备。也可直接输入 demo.arextest.com:18080/nettyTest/n… 作为接口途径,但如果需求在多个环境(如生产环境、测验环境、开发环境等)进行测验时,逐一修正前置 URL 比较吃力,因此建议运用环境变量,在不同环境进行测验只需切换环境即可。

    2. 在新建的恳求右侧下拉菜单中挑选 Add Case, 为该接口恳求创建一个测验用例,用例的属性能够直接承继于恳求,削减保护成本。

    3. 其他参数能够根据需求设定,Parameters 中设置参数, Headers 设置恳求头, Body 设置恳求体, Pre-request Script 设置前置脚本, Tests 设置断言,判别是否契合预期。

    4. 悉数设置完成后,点击 Send 发送恳求并履行脚本验证(如有),如下图。

自动化回归测试工具—— AREX 上手实践

运用 AREX 进行回放测验

AREX 的流量录制功用是经过 Java Agent 技能完成的,如需录制运用,首要需求在被测的 Java 运用启动中加入 Java Agent 装备:

environment:``- JAVA_TOOL_OPTIONS=``'-javaagent:/usr/local/tomcat/arex-agent-0.1.0.jar'` `-Darex.service.name=community-demo-name -Darex.storage.service.host=demo.arextest.com -Darex.enable.debug=``true

其间:

  • -Darex.service.name=community-demo-name 是为了设置该运用在 AREX 中展现的名称;
  • -Darex.storage.service.host=demo.arextest.com 是设置 AREX 的 Storage 服务的接口地址为 demo.arextest.com 。

当被测运用装载了 AREX Agent, 并正确装备了 AREX Storage 服务地址后, 即可在回放测验(Replay)列表中看到该运用名,说明运用已经成功注册,如下图所示:

自动化回归测试工具—— AREX 上手实践

community.0.2.6 为本文中运用的测验运用 Arex-community-test(0.2.6 版本)的缺省名。随后 AREX 会记录下对这个服务接口地址进行的每个拜访,包含恳求和应答,以及被测服务对外部依靠的拜访(数据库,Redis等等),这个进程便是 AREX 的录制进程。

在录制完成后,点击页面右上角挑选 Start Replay 开端回放测验。顺次挑选回放测验的地址(为了演示方便,本次演示中录制和回放选用同一个地址 demo.arextest.com:18080)及需求回放的用例的录制起止时刻。

自动化回归测试工具—— AREX 上手实践

AREX 履行回放操作时,首要由 Schedule 调度服务将被测运用的录制数据(恳求)从数据库整理出来,随后向目标被验证服务发送接口恳求,当服务接收到恳求后,处理恳求逻辑,一起由 Agent 把需求 MOCK 的外部依靠数据装载进来,处理结束后回来响应报文。调度服务会将回放的响应报文和录制的响应报文进行比对,并由剖析服务统计剖析比对成果,将存在的 BUG 或者疑似 BUG 展现在回放陈述中,供开发和测验人员检查。

回放陈述页面如下图所示:

自动化回归测试工具—— AREX 上手实践

当录制与回放的比对成果存在差异时,陈述中会出现失利用例(Failed):

自动化回归测试工具—— AREX 上手实践

1.在陈述页面中挑选某条途径下 Case Table,能够看到每个回放用例的状况,如下图所示。点击 Detail 检查详情, Save 将该用例保存为常规测验用例。下图中的 Failed 用例左边基准版本(录制)存在数据库查询(query),但右侧最新版本(回放)没有,则标识回放失利。

自动化回归测试工具—— AREX 上手实践

  1. 挑选 Diff Scenes,进入剖析比对差异页面,AREX 将该途径下的比对差异点进行了兼并展现,方便开发及测验人员检查剖析。

自动化回归测试工具—— AREX 上手实践

当然也能够挑选 Tree Mode 进行树状图展现。

自动化回归测试工具—— AREX 上手实践

以上便是 AREX Demo 环境的完好试用操作。Demo 环境目前还存在一些问题需求改善:

  1. AREX Demo 环境布置在 AWS 上,有些用户反应拜访不是很快,特别是在处理大数据集时,操作速度明显变慢,需求进一步优化
  2. AREX 操作界面还有一些不行友好和直观,界面易用性上还需求优化提高。

目前 AREX 保持着每月 1-2 次的发版频率,我们相信,在未来的开源共建之路上,AREX 会越来越老练和完善。


AREX 文档:arextest.com/zh-Hans/doc…

AREX 官网:arextest.com/

AREX GitHub:github.com/arextest

AREX 官方 QQ 沟通群:656108079