当前位置: 首页 > news >正文

UI自动化测试的三大痛点

🍅点击文末小卡片,免费获取软件测试全套资料,资料在手,涨薪更快

当我们找工作的时候查看招聘信息发现都需要有自动化测试经验,由此看来测试人员不会一点自动化测试技术都不好意思说自己是做软件测试的。大部分测试人员也都是从使用自动化测试工具、录制回放、测试脚本、开发小工具入门自动化测试的,然后在慢慢的接触 UI 自动化、接口自动化、持续集成,最后搭建自动化测试框架系统。

大部分测试初学者入门自动化测试接触最多的也许就是 UI 自动化了,也都使用过移动端的 Uiautomator、Appium UI自动化框架、PC 互联网界面相关的 Selenium、Robot Framework UI自动化框架,潜意识里认为 UI 自动化测试很简单。但是使用一段时间之后喜忧参半,特别是在工作中真正使用时就立马水土不服了,开发和维护脚本的时间远远大于手工测试的时间,得不偿失,最后由回归到了手工测试。

如果要想 UI 自动化在实际的工作中得以使用,必须要解决以下痛点,否则 UI 自动化的测试还有很远的路要走。

1、需求不稳定,频繁变更的项目

UI 自动化测试最大的挑战就是需求的变化,界面如果经常变动,脚本就需要重新编写,界面需求频繁的变更导致编写脚本的速度赶不上需求的变化,那 UI 自动化就是名存实亡,因此 UI 自动化测试特别适合需求稳定、不会频繁变更的项目。敏捷开发的项目需求不稳定,需求的变更经常会导致界面的变更,同时敏捷开发的项目周期短,因此敏捷开发的项目就不适合做 UI 自动化。

2、开发维护周期短的项目

对于一次性开发的、周期短的项目,考虑到 UI 自动化的投入产出比,不宜进行 UI 自动化测试。UI 自动化的收益主要是在多轮测试的时候才能体现出来,试想一个维护周期短的项目测试的轮次比较少,如界面测试就测试 1 到 2 轮即可,这样完全可以使用手工测试就行了。同时自动化脚本的开发和调试本身就需要一定的时间,如果项目的周期短,没有足够的时间支撑脚本的开发,那也无需自动化测试了。

3、被测系统开发不规范,可测试性需求不明确

UI 自动化测试其实就是模拟手工点击,不像人眼可以直接找到需要点击的控件,程序就不一样了,需要我们事先要找到要点击的控件,然后让程序去点击完成模拟手工的操作。这就需要在项目开发前针对自动化测试定义一些列的规范,开发工程师在开发的时候遵循规范开发,UI 自动化才可以进行下去。例如针对按钮控件没有定义唯一的 id 或者文本描述等,在自动化脚本编写的时候就无法找到该控件。如果开发在不同的版本之前经常随便变更控件的定义,那之前能执行的脚本在之后就无法正确的运行,需要实时维护,带来很高的人力成本而变得效率低下。同样的还有接口自动化测试过程中的接口参数等。

那什么样的项目适合进行 UI 自动化测试呢?如下列举的可以进行参考:需求稳定不频繁变更;需要频繁的回归验证;UI 界面稳定、界面控件定义规范可测试性强;开发维护周期长的项目;项目进度压力小;大型公司大平台;测试部门中大部分测试人员具备脚本开发能力。

当前,UI 测试是耗费测试团队人力最多的测试环节,大部分的测试人员日常的工作就是 UI 测试。因此 UI 自动化非常适合解决简单、机械、重复的任务,增加测试的覆盖率。

UI 自动化测试不仅仅编写测试脚本,也需要设计,不仅需要考虑成百上千条用例的执行效率,还需要考虑维护成本,执行结果的正确性。我们需要明白,UI 自动化测试不能替代手工测试,也很难减少测试人员,不能盲目的推崇和追求 UI 自动化测试。

写在最后

最后感谢每一个认真阅读我文章的人,礼尚往来总是要有的,虽然不是什么很值钱的东西,如果你用得到的话可以直接拿走:

这些资料,对于做【软件测试】的朋友来说应该是最全面最完整的备战仓库,这个仓库也陪伴我走过了最艰难的路程,希望也能帮助到你!凡事要趁早,特别是技术行业,一定要提升技术功底。

http://www.cnnetsun.cn/news/817851.html

相关文章:

  • unet image Face Fusion界面汉化成功?蓝紫渐变标题区体验
  • Qwen3-0.6B模型调用全解析:适合小白的图文教程
  • PHP 脚本需写入日志、缓存 → 必须对目录有 写权限的庖丁解牛
  • UNet人脸融合参数调优技巧,提升换脸自然度
  • AI文字检测新选择:ResNet18轻量模型实测性能不输大模型
  • 性能测试的实践四大痛点及解决方法
  • 版权信息要保留!CosyVoice2-0.5B二次开发注意事项
  • 手把手教学:用YOLOE镜像实现AI视觉检测零配置启动
  • YOLOv13功能全测评,实际场景表现如何
  • API全面方案:多平台API管理,一站式解决!
  • Linux 命令:nl
  • 亲测Glyph镜像效果!AI看文档处理24万字小说真实体验分享
  • Altium Designer教程入门:系统学习层叠设置与板框规划
  • 从0开始学OCR检测,cv_resnet18_ocr-detection让初学者更自信
  • HuggingFace与ModelScope对比:CAM++来源平台优劣
  • 企业客服质检新方案:用SenseVoiceSmall自动抓愤怒客户
  • 航天技术背书!双向液冷,保障高密度机柜稳定运行
  • 无需编程基础!用WebUI界面玩转cv_resnet18_ocr-detection模型
  • 上传音频就能看结果,SenseVoiceSmall让语音分析变简单
  • 把大模型塞进蓝牙耳机:1.46MB 的 Whisper-Lite 落地全记录
  • 全面讲解Arduino小车主控板引脚分配:新手实用参考
  • 电商客服模型微调实战:用Unsloth快速实现意图识别
  • unet image Face Fusion助力数字人制作:虚拟形象生成教程
  • 告别复杂环境配置!gpt-oss-20b-WEBUI一键启动方案
  • PyTorch-2.x-Universal-Dev-v1.0功能全测评,真实表现如何
  • 用麦橘超然做AI艺术创作,这些参数设置最出片
  • 树莓派自动化进阶技巧:用测试镜像实现无缝开机启动
  • SenseVoiceSmall部署教程:Linux下Docker镜像运行详细步骤
  • Unsloth电商评论挖掘:情感分析模型微调
  • 5分钟上手SenseVoiceSmall,多语言情感识别一键体验