一、UI 自动化测试的难点在哪里

从软件产品层面来看:

  1. 元素变化比较快,现在很多平台都是基于微服务架构,模块化和低代码已经变成了产品的标配,不是模块化的产品都不好意思拿出来说事,页面对应元素随着版本迭代千变万化;
  2. 元素定位方法不统一,很多产品在 Web 开发是时候并没有给元素设置固定的 ID/Name,很多元素定位都需要基于 xpath 或者 css 等,需要花费大量人力去定位。

从测试执行层面来看:

  1. 元素复用比较难,一个元素可能会引用在多个 UI 自动化测试场景中,如果一个元素的改变需要修改所有相关的 UI 自动化脚本,耗时耗力;
  2. 现有的很多 UI 测试录制软件不够智能化,以 Selenium IDE 为例,录制的步骤会有很多无效步骤,对上传文件等场景也不能很好的覆盖,录制的脚本再次执行都会因为各种原因跑不起来。

从企业管理层面来看:

  1. 缺少没有平台化的工具,对测试人员要求比较高,需要具备一定的代码基础,不具备普适性;
  2. UI 自动化测试普遍被认为是投入产出比不高的测试,对 UI 自动化测试的投入基本很难获得企业管理者的认可。

二、有没有什么比较好的平台来去做 UI 自动化测试

MeterSphere UI 测试模块围绕应用系统的 用户界面 提供以下主要功能:

  1. 元素库:平台提供元素库的功能,通过创建元素库,可以把 UI 自动化场景中的单个步骤,进行统一管理,达到页面元素在不同 UI 场景中复用的效果。
  2. UI 自动化:支持手动创建 UI 自动化场景和导入 SeleniumIDE 工具录制好的 side 脚本文件,支持添加浏览器操作、 弹窗操作、元素操作、鼠标操作、输入操作、流程控制等步骤,并提供查看元素库、前置操作、后置操作、错误处理高级功能。
  3. 测试报告:提供直观、美观的页面对 UI 测试的结果进行可视化展示,可查看场景全部步骤和失败步骤,以及控制台详情,并且支持对步骤执行时的 UI 截图预览。

MeterSphere 针对 UI 自动化测试主要优势在于:

最后说下,MeterSphere 从技术层面解决了一部分 UI 自动化测试编写、管理、执行等问题,但是企业在考虑上 UI 自动化平台时还是要结合被测系统类型、测试人员技术能力、投入产出比等多种因素去衡量。


↙↙↙阅读原文可查看相关链接,并与作者交流