4 个最常见的自动化测试挑战及应对措施

原创
Erin520
2021-08-23 10:53:14
3273
摘要:杂乱无章的自动化只会带来更快的混乱。
有人说:“杂乱无章的自动化只会带来更快的混乱。”不仅更快,而且是更严重、更大的混乱。如果使用得当,自动化可以成为测试团队中令人惊叹的生产力助推器和系统的质量增强器。自动化测试的关键是要正确运用,这是初始最困难的部分。下面,我们会了解最常见的自动化测试挑战以及应对措施。

挑战 1:获得管理层的批准

跟任何公司部门一样,员工总要知道预算允许和预算不允许的东西。测试人员可能已经知道自动化在商业和技术两方面的优势(缩短上市时间、增加测试覆盖度和准确性、降低每小时的测试成本、更快发现错误等),但是测试人员怎样说服财务部门和软件开发负责人,为自动化测试争取必要的时间和资金?


“自动化测试能提高生产力和准确性,这是必须制定商业案例的地方。单个缺陷的成本……可以抵消一个或多个工具授权的价格。” ——Randall Rice


我们同意 Randall Rice 的观点,即自动化可以收回成本。为了向管理层证明财务收益是可观的,可以向他们展示对自动化测试投资回报率所做的简单细分。对其他人、其他利益相关者坦诚公开也很重要,不要撒谎说自动化前期工作和资源需求小。

挑战 2:选择并使用合适的工具

因为种种原因,许多团队没能成功通过这个阶段。他们可能是不了解特定工具的专业知识、找不到理想工具、工具集覆盖不够广等等。
如果在怎样使用工具这方面没有足够基础知识,可以有以下几个选择:
  • 参加在线课程
  • 让工具的创造者来给你培训
  • 聘请顾问以更好掌握
  • 当其他方法都失败时, 外包可能也是一种实用的方法
如果现有的工具不能满足你的需求,那就考虑找一个多工具的解决方案。 国产工具往往是最适合本国工作的选项。记住,不可能完全测试所有内容,但可以使用工具去测试最重要的部分。

最后,如果工具花费超出预算,就快速进行成本与收益分析并展示出来。这样可以衡量之前错误造成的损失,并能展现如果使用该工具可以省下多少时间和金钱。

挑战 3:确定启动策略

好的,现在已经拥有了可以开始自动化的所有工具及支持,但是到底把什么东西自动化了?又是怎样做的?这些工具本身并没有告诉你要自动化什么,就像新手父母发现他们的小孩没有带着育儿手册降生一样叫人沮丧不安。是会培养出一代优秀的自动化测试,还是会被它所破坏再无法管理?当然了,我们肯定希望是前者!但实际上根本没有办法把所有事情都自动化,所以必须具有战略眼光。可以使用两种方法来帮助解决此问题:基于风险的测试和自动化金字塔。

基于风险的自动化测试

它优先测试最有失败风险的元件,如果发生所述失败,这些元件也会带来最大的负面后果。在此处需要考虑:
  • 潜在错误的经济影响
  • 失败的概率(这里最好询问开发人员的想法)
  • 服务级别协议 (SLA)
  • 有无财产危险
这应该为你提供了一个好方法来确定自动化测试用例的优先级别。

自动化测试金字塔

我们强烈推荐的另一种方法是遵循自动化金字塔。在最近的一篇文章中,我们对这个主题有了更广泛的讨论,这里进行快速快速概述。


冰淇淋蛋筒尝起来甜美诱人,但采用冰淇淋蛋筒方法可能会破坏自动化的进程!遵循冰淇淋蛋筒方法将导致高度的错误率,因为它强调 UI 级别的自动化,而UI级别使用的是更易被破坏的测试。但如果把精力投入于自动化单元测试,那么在软件开发过程中,几乎可以马上发现错误、消除错误。

挑战 4:设定对自动化的现实期望

无论你的工具和流程多么出色,要记住测试永远不会完成。自动化测试不是解决漏洞百出的系统的银弹,不应该代替非自动化测试,而应当与非自动化测试结合使用。有一些测试根本无法自动化,但也有一些自动化测试可以发现其他方法无法发现的错误。


自动化测试实际上只是自动检查系统,而仍然需要人工进行非自动化测试。此外,请记住,测试的价值来自它提供的信息,而不是执行的测试数量或频率。我们最关心的获得正确信息,以便在提高系统质量时做出最佳决策。


确保团队和管理层同意并理解自动化方案的预期结果,这样大家才能达成共识!


原文链接:https://abstracta.us/blog/test-automation/4-common-test-automation-challenges-overcome/

*本文来自 开源软件供应链点亮计划 - 暑期2021 活动,译者:李晓晴


Q: 自动化测试在项目管理中面临哪些挑战?

A: 自动化测试在项目管理中面临的挑战包括获得管理层的批准、选择合适的工具、确定启动策略以及设定对自动化的现实期望。


Q: 在禅道等项目管理软件中如何有效进行bug管理

A: 在禅道中,bug管理可以通过集中记录、分类和跟踪bug,从而提高识别和修复效率,确保项目稳定性。


Q: 敏捷开发工具如何支持自动化测试流程?

A: 敏捷开发工具支持自动化测试流程,通过持续集成、测试驱动开发等方法,确保测试的频繁执行和反馈快速。

  • ai_thumbnail_81416_1759109849.png
评论列表
🐺
失眠的鞭炮2025-11-21 10:43:03回复
选择工具真麻烦,有更好建议吗?

推荐阅读

DevOps知识点——3C知多少

传统集成、持续集成及过程、持续交付、持续部署、3C优势……
Erin520 2020-05-27

测试开发之前端篇-Web前端简介

自从九十年代初,人类创造出网页和浏览器后,Web取得了长足的发展,如今越来越多的企业级应用也选择使用Web技术来构建。前面给大家介绍网络协议时讲到,您在阅读这篇文章时,浏览器是通过HTTP/HTTPS协议向服务器发送请求、并显示了其响应内容的。本文给大家简要介绍下,网页在浏览器中展现和互动时,主要涉及到的以下几个方面的技术。希望此系列文章,对大家工作中的Web测试用例设计、自动化测试,以及网站问题...
aaronchen2k 2021-07-27

大厂裁员不断,这个高薪岗位却找不到人?

《未来简史》写道:“未来属于那些能够快速适应变化、不断学习新技能的人。”
🌻
陈哥聊测试
03-15

测试工程师必知的10大测试法则

也许某次测试会打破一两条法则,不必把它们奉为金科玉律,重要的是寻求持续改进,而非特定一次的完美。
🍪
陈哥
2023-09-12
返回顶部
客服头像
金娟
高级客户经理
客服微信
18562856230
1826606239
统一服务热线 4006-8899-23
我要提问提问有任何问题,您都可以在这里提问。问题反馈反馈点击这里,让我们聆听您的建议与反馈。