• 0
  • 0
分享

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

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

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

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

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

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

  因为种种原因,许多团队没能成功通过这个阶段。他们可能是不了解特定工具的专业知识、找不到理想工具、工具集覆盖不够广等等。

  如果在怎样使用工具这方面没有足够基础知识,可以有以下几个选择:

  · 参加在线课程

  · 让工具的制造者来进行培训

  · 聘请顾问以更好掌握

  · 外包

  如果现有的工具不能满足你的需求,那就考虑找一个多工具的解决方案。 记住,不可能完全测试所有内容,但可以使用工具去测试最重要的部分。

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

  挑战 3:确定启动策略

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

  基于风险的自动化测试

  它优先测试最有失败风险的元件,如果发生所述失败,这些元件也会带来最大的负面后果。在此处需要考虑:

  · 潜在错误的经济影响

  · 失败的概率

  · 服务级别协议 (SLA)

  · 有无财产危险

  这应该为你提供了一个好方法来确定自动化测试用例的优先级别。

  自动化测试金字塔

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

1.png

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

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

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

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

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


作者:陈琦    

来源:http://www.51testing.com/html/26/n-4481426.html

  • 【留下美好印记】
    赞赏支持
登录 后发表评论
+ 关注

热门文章

    最新讲堂

      • 推荐阅读
      • 换一换
          •           首先,确保你所发现的问题是确实是一个bug,不要出现因为测试人员操作错误或配置错误所引起的“bug”,这样会降低你在开发人员心中的可信度。在测试的时候,如果发现测试的实际结果与预期测试结果不符时,不要着急马上报bug,先想想为什么会出现错误。作为专业的测试人员,应该能够对出现的问题进行跟踪,确认了在配置、操作没有错误的前提下,通过追踪分析确认所测试的业务流程确实是存在bug,并能大概对bug的产生原因进行定位。测试人员,需要做到专业,尽量少给开发找麻烦,不要制造实际上并不存在的bug。    &...
            0 0 1003
            分享
          •   有这么个普遍现象  测试招聘者,特别是一、二线互联网公司的招聘者最苦恼的事儿就是招人。想找到一个合适的人难于上青天,每天各种撒网,简历看几百份,面大几十人,能捞到一个中意的小伙伴就谢天谢地了。但同时很多测试小伙伴发现找工作很难,特别是进大一点的厂,他们特别挑:代码要会写,要有软件架构能力,问一大坨平时根本用不到的技术问题,还挑经验,挑沟通能力,挑这挑那,有时候还特么挑学历、挑年龄。。。供求总难以匹配起来,造成了双方都很痛苦。  Why?  能力要求不匹配是最核心的问题。软件、互联网近 20 年来飞速成长,其实也经历了很多阶段。行业软件兴盛阶段和外包兴盛阶段(2000-2010 年)行业进入...
            0 0 836
            分享
          •   项目有风险  今天下午15点,团队成员D向他的主管Z反馈他测试的项目有风险:项目在测试周期内,但在用例评审时发现有一处功能逻辑有争议,需要产品经理跟业务方确认,可能出现的情况有:  1. 不变更需求,功能逻辑按现有实现处理;  2. 需求变更,功能逻辑对应地进行改动,会产生新的开发工作量和测试工作量。  目前进展是已经提醒产品经理跟业务方确认,但催了两次依然没有最终结论。  主管Z意识到D的反馈略晚,但依然提醒该同学应该将现有的影响、可能出现的风险尽早同步给相关方(产品经理、研发同学、相关测试同学以及他们的主管)。为了确保信息传达一致,最好的形式是在聊天软件里将事情描述清楚,然后...
            0 0 753
            分享
          •   在讲述软件测试的多种可能性之前,先来了解现在所知的开发模式中,软件测试行业还会继续存在吗?很多做测试的朋友问过这样一个问题:“现在敏捷开发模式中,自动化测试那么流行,而且连开发人员都开始做测试了,是不是以后就没有测试人员了?”  其实测试工作并不会消失,而且敏捷开发模式带给我们新的机遇和挑战,那对于测试人员来说,职业发展的方向又有哪些呢?  测试人员的职业选择  首先我们需要明确一个想法,如果想通过软件测试作为跳板,去做开发类或者管理类工作,不在我们的探讨范围内。  很多测试人员在选择软件测试作为职业的时候,其实更优先选择的是软件开发的职位,可能由于种种原因而与开发职位失之交臂,只好选择了...
            0 0 1000
            分享
          •   Jmeter内存溢出解决方法  现在越来越多的小伙伴在压力测试过程中选择使用Jmeter,原因是这个工具开源且小巧,而且还支持二次开发。  但是事情都有两面性,利弊共存啊,比到商业软件Loadrunner,Jmeter在高并发,特别是大型项目的高并发,甚至是脚本运行时间过长时,压测机会出现严重卡顿甚至报异常——内存溢出,此时整个压测机几乎陷于瘫痪状态。  这让很多小伙伴十分的头大,那该怎样改善这个局面呢,今天我就给大伙支几招!  要想治病得知道病根,首先我们得了解下我们常说的内存溢出和内存泄漏到底是什么意思,它产生的原因是什么。  内存泄露是指程序在申请内存后,无法释放已申请的内存空间,一...
            0 0 1485
            分享
      • 51testing软件测试圈微信