UI 自动化测试最佳实践
1. 前言
本文介绍了使用阿里云云效-专有云版本的 UI 自动化产品,来实现软件产品的 UI 自动化测试。阅读本文后,您能够了解如何在整个软件研发过程中进行 UI 自动化测试。
2. 最佳实践概述
AUI 是 WEB 页面自动化测试的解决方案,提供了在线的脚本录制、脚本调试与维护等功能。您的脚本不仅可以在本机回放进行功能测试,还可在云端执行脚本,定时在后台回放脚本以进行项目的持续集成、业务功能的回归和线上功能的监控等。相比其他 WEB-UI 自动化测试框架,AUI 自动化测试脚本的创建和维护都无需您接触脚本代码,所有交互均在 WEB 页面上在线可视化使用。
【适用场景】
- 软件需求变更不频繁
- 项目周期长
- 自动化测试脚本可以重复使用
- 比较频繁的回归验证
【方案架构】
- 设计自动化测试用例
- UI 自动化测试环境准备
- UI 自动化脚本集管理说明
- 准备 UI 自动化公共脚本
- 录制 UI 自动化测试脚本
- 本地回放调试 UI 自动化脚本
- 执行 UI 自动化测试脚本
【方案优势】
- 一款创新革命的 WEB-UI 自动化测试产品
- 一款全可视化交互生成自动化脚本的测试产品
- 一款无需安装复杂 IDE 环境,在线编辑、调试、维护的测试产品
- 一款提供定时云端脚本执行,可支撑业务持续集成,业务回归等的测试产品
3. 前置条件
在执行本文操作前,请完成以下准备工作:
- 购买并开通云效环境管理、接口自动化和数据银行产品模块。
- 已注册云效账号并完成认证,可以登录云效平台。
- 完成云效产品培训并通过相关考试。
- 加入云效的钉钉答疑群(联系本公司云效接口负责人入群)。
- 产品需求相关方(业务方、PD、UED、PM、技术架构、开发、测试、验收等)已经通过钉钉或企业微信建立实时通信群。
- 分析产品架构和系统架构,熟悉被测系统的业务功能。
4. 工具准备
- 本方案使用 Chrome 浏览器,需提前准备。
- 安装钉钉或企业微信。
- 安装 UI 自动化录制插件,可在 UI 自动化产品模块下载中心根据引导安装。
5. 使用流程
5.1 设计自动化用例
自动化测试的核心是测试用例,测试用例的质量决定了自动化测试的质量。因此,在录制自动化脚本前,要根据业务逻辑,如功能、业务场景以及异常场景来设计测试用例。下面以某商城下单为例进行说明,包含如何创建和管理下单中的公共脚本、录制下单的用例和多环境执行用例。
5.2 测试环境准备
【背景说明】:为了保证自动化测试的稳定性,降低自动化维护成本,一个稳定的自动化测试环境是必不可少的,云效的测试环境模块可帮助您高效地管理自动化测试环境。
【操作步骤】:
- 点击测试环境 > 环境管理 > 变更集环境申请,选择自动化测试环境,然后点击申请按钮为所要测试的应用申请环境。
- 点击部署按钮,在自动化测试环境中部署所测试的应用。
5.3 脚本集管理说明
云效的 UI 自动化脚本分为两个维度:变更集维度和脚本集维度。为避免后续产生误解,首先对我的脚本集和我的变更集这两种不同维度的 UI 自动化脚本进行说明。
- 变更集维度:变更集是从配置管理系统同步而来,其UI自动化脚本用于管理新需求的自动化脚本,以项目维度进行管理。
- 脚本集维度:脚本集用于管理归档的 UI 自动化脚本,脚本集可按照业务模块进行命名归档。
两种维度的关系:变更集的 UI 自动化脚本稳定后,可归档到脚本集中进行统一维护。脚本集关联应用后,该脚本集会自动归为主干脚本集,主干脚本集用于用户在集成自动化时进行回归验证。在变更集和我的脚本集中都可以新增脚本,新增脚本的操作步骤是相同的。
5.4 准备公共脚本
【背景说明】:在编写自动化脚本时,一些步骤可能会在多个脚本中使用到,此时可以考虑将这部分重复的步骤抽取出来作为公共脚本,供自己和团队其他人调用,以实现脚本的可重用性。比如,在进行商城测试的过程中,很多脚本都需要登录,这时可以将登录步骤抽取出来作为公共脚本。这样,便可在后续的用户管理、商品搜索、下单等脚本中引入该登录脚本,来避免重复的操作。
【操作步骤】:
- 由左侧导航栏 UI 自动化进入我的脚本集,新建一个脚本集。
- 新增脚本。将鼠标移动到新增脚本上,在下拉选中选择新录制,输入脚本名称,勾选另存为公共脚本,此处也可不勾选,后续再将该脚本设置为公共脚本。
录制脚本。脚本创建后,点击脚本上的录制按钮(确认录制插件安装无误),进入 AUI 脚本录制页面,输入被测系统的 URL 地址,点击开始录制,进入被测系统。进入被测系统后,录制插件会自动记录我们在该页面所做的一切操作。
录制过程中,点击上图插件左下角键盘按钮,可查看录制的代码。
点击脚本保存按钮,可选择将该公共脚本设置为个人公共脚本还是公司公共脚本,个人公共脚本可以被自己引用,公司公共脚本可以被公司其他人所引用。
录制完成后,点击录制完成按钮,即会自动关闭该窗口,完成该公共脚本的录制。
- 公共脚本管理。进入UI自动化 > 高级功能 > 公共脚本,即可以看到所有公共脚本,可在此页面新增或删除公共脚本。删除公共脚本之前,需确保该公共脚本没有被其他脚本所引用,否则无法删除。
5.5 录制自动化脚本
【操作步骤】:
新增脚本。点击新录制,输入脚本名称。由于下单是一个独立操作,不需要存为公共脚本,因此无需勾选另存为公共脚本,点击确定。
录制脚本。点击录制按钮,进入脚本录制页面。输入被测地址的URL,点击开始录制,即可进入被测系统。
进入被测系统以后,我们就可以将登录的公共脚本引入,避免重复登录。点击录制插件上的+公共脚本,进入公共脚本添加页面,选择我的公共脚本,选中刚刚创建的登录脚本,点击确认,该脚本就会自动引入登录的公共脚本。登录后,就可以按照正常下单的操作流程,在页面上进行操作,录制插件会自动记录我们录制的步骤并生成相对应的代码。在该页面也可以进行调试工作,点击录制插件上方的页面调试,即会从我们选中的页面开始自动执行调试,如果某个步骤有问题,可以删除该步骤重新录制该步骤。 一个脚本录制完成后,我们可以添加一个检查点,以便于后续执行该自动化脚本时,校验该脚本是否能够正常执行。在该用例中,以一个文本检查点为例,来校验该用例是否能够正常提交订单。在录制页面,将鼠标移动到需要校验的文本上,右建选择元素检查点,然后选择文本检查。 录制工具会自动匹配检查的文本和预期结果,如果是异常检查,我们可以修改预期结果。点击确定,即可完成该文本的校验。 录制插件的脚本保存,然后点击关闭窗口即可完成该用例的录制。
5.6 本地回放调试自动化脚本
【背景说明】:自动化脚本录制完成后,可以先在本地回放调试来确保自动化用例的完整性。
【操作步骤】:
- 点击页面上的回放按钮(注:确保事先已成功安装本地回放助手)。
- 点击代码回放,浏览器会自动执行我们录制的脚本。
- 本地回放也会生成测试报告,本地测试报告会存放在我们在本地安装的 agent 目录下。测试报告如下图所示,点击步骤截图可查看具体每一步的执行情况。
5.7 远程执行自动化脚本
【背景说明】:UI自动化脚本编写完成后,要在不同的自动化测试环境中多次执行,以发现一些隐藏的问题进而提高自动化脚本的稳定性。云效中支持多种执行方式:单用例执行、批量执行、定时执行和自动集成测试执行。在不同场景下,可以选择不同的执行方式。
- 单用例执行和批量执行:适用于用例编写或为了验证功能是否正常时使用。
- 定时执行:可通过定时执行回归测试来保证某一个发布的质量。
- 自动集成测试执行:每次代码变更时,自动触发集成自动化执行来保证每次更改不会引起业务功能的异常。
【操作步骤】:
单用例执行
进入我的变更集,点击执行配置,选择执行环境和执行机组。
勾选要执行的用例,点击执行脚本并选择某一浏览器执行。
- 执行完成后,点击执行结果可查看本次执行的结果。点击历史结果,可查看该用例的历史执行结果。
- 批量执行
- 进入变更集后,可一次性勾选要执行的多条用例,然后执行脚本。执行后,可查看每个脚本的执行结果。
- 点击执行结果,可查看每条用例的执行结果。
- 定时执行
- 进入我的变更集,点击下图定时执行图标。
- 在定时执行页面,设置定时执行的触发时间、选择浏览器类型、设置邮件接受人的邮箱,执行结果会以邮件形式发送到配置的邮箱。
- 集成时自动回归测试
- 当项目用例稳定后,可将用例归档到指定用例集,可选择单个用例进行归档或者勾选多条用例后一起归档。
- 项目用例归档到用例集后,用例集中也可以执行用例,执行方式与在变更集中执行用例相同。同时,在用例集中可以关联应用,关联应用后的用例集默认会归为主干脚本集。项目集成阶段是以应用的维度进行集成的,应用在集成过程中,关联了该应用的主干用例集会自动执行,并生成相应的测试报告。
- 集成过程中可查看自动化执行结果。
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论