自动化测试工具的选型和应用心得

2016-11-13   出处: softwaretestinggenius  作/译者: Software Testing Genius/亚然

聪明的测试经理在自动化测试工具选型时,会首先做些小规模的试验,然后根据综合性的标准来做选择。通过试验使其能更加明白管理和应用好自动化测试工具也是非常重要的。

成功的工具选型并不能保证其在公司内成功的运用。大多数的公司买完测试工具后,都只是成为纯粹的摆设或者说“案例”,仅仅是由于某种或其他原因,导致公司无法从投资中获得预期的效益。

相比工具运用起来所需要的内部成本,购买工具的成本仍然是相当小的。测试管理者会花费大量的时间和精力在内部推广工具,进行组织培训,支持并创建合适的基础设施,来进行自动化测试。

实现自动化测试与冰山类比:

实现自动化测试的过程就像一个冰山,百分之九十的努力是沉入水下的。

对于大多组织来说,购买合适的自动化测试工具只是其中最简单的一部分工作,就像下图中浮在表面的冰山一角一样。

实现自动化测试的三个关键的要素:

1)基础设施和自动化测试规范; 

2)测试工具能在内部得到有效的推广;

3)实施团队和管理层的持续支持;

在自动化测试工具选型阶段,通常是考虑不到上面提到的三个元素的。与为了有效实现自动化测试而花费在这三方面的成本相比,购买工具的成本实在是太小了。

从工具最初在内部的推广到最终得以接受并使用,这个过程就像一场“管理变革”。


参与自动化工具实施和变更过程的人员:

在实现自动化测试的过程中,可以有各种各样的角色,不一定只局限于某个组织或者某个人来进行。第一个关键的角色就是“工具推广者”,这是推广使用工具的重点。他/她需要是一个很热情的人,有热情在组织中实现测试自动化,并切对引入自动化测试工具的好处上有坚定的信念。

第二个角色就是“变革代表”,负责规划和管理工作人员日常工作方式的变化。他/她应该是有丰富的软件测试经验的人,有很好的分析能力,能够很好地意识到最新的测试技术。在较小的组织中,“工具拥护者”可以履行“变革代表”的职责,但在更大的组织中,这些功能可以由不同的人来负责。

第三个角色就是“测试管理者”或者赞助商,即高层管理人员,对“工具推广者”和“变革代表”给予支持。在小组织中“测试管理者”和“工具推广者”的职能也可以由同一个人来执行。

第四个角色可以被称为“工具保管者”,一般由他们来负责工具的技术方面问题,如更新工具版本和建立自动化和测试技术的规范。他们应该有权制定自动化测试工具使用过程中的标准。

实施过程:

实施团队就是所有将要使用该工具的这些人。他们会对使用的工具的需求和如何最好地使用工具进行沟通交流。

实施过程的第一步就是要准备为什么要用它的理由。这需要管理层有效的、实质性的承诺。重要的是,管理层的期望值要根据实际情况来定。下一步就是由执行团队进行内部宣传和内部市场研究。

首先在一个小规模的试点项目上使用新的测试工具是一个不错的选择。对试验情况设定量化目标并评估使用结果,如果结果是令人鼓舞的,那么就可以更大范围的推广使用该工具。同时,可以对比使用工具之前的情况,进一步的评估和完善使用工具。

人员管理不善的风险问题:

管理变革主要是解决人的相关问题,因为要改变的正是人的工作方式。要注意“人”的相关问题是非常重要的。这是为什么很多自动化测试失败的原因之一。一个好的测试经理必须对这些问题有较高的敏感度,但一般人都没有意识到技术上的变化对人员情感和心理的影响。

如果你错误的改变了人们工作的方式,你也许会对改变所带来的的代价和对该抵抗所带来的风险有所怀疑。抵抗是变化过程中的一个自然组成部分,但如果它没有被处理好,它也会导致变革的努力功归一篑。如果有“我们尝试了一次,我们肯定不会再尝试”这种态度,那么将来再想做任何的改变都只会更加的困难。

有一些人很容易对现状不满意,而且他们的变化要求很低,会跟上任何随之而来的变化。而有些人会说,不管将来会发生什么,我已经这样工作了25年,我不想做出任何改变。这样的人有一个变化的要求很高,并且会对任何新的想法都很抗拒。

鼓励人们改变传统的工作方式:

 改变一个人的性格是很困难的。然而,鼓励人们改变他们的工作方式是相对容易的,可以用下面这三点:

 1)让他们对目前进行软件测试的方式感到不满意(例如说:“你还在通过手工方式做所有的测试吗?)。

 2)让他们对未来的工作方式有个更全面的愿景(例如说:“来看看我们在试点项目中做的事情,有没有你感兴趣的?”)。

 3)把简单的工作留给他们(例如说:“让我帮你用自动化做一些关键的测试点,你可以进行其他的测试点”)。

对于即将到来的改变,详细的告诉他们你的要求是什么,他们现在需要做的是什么。人们通常不喜欢摸黑前进,但如果你能照亮他们前方的路,他们通常可以说服自己向前迈出一小步。注意,这是你需要计划实施的一部分,以便于你提前计划出来所有步骤。

成功的变化产生更多的变化:

 人们一旦开始改变他们的工作方式,一个成功的变化经验将会产生更多的变化。一旦他们采取了第一步,发现这是有益的,他们会更愿意采取下一步,即他们对变化的要求将会越来越低。

 例如,如果有人现在在一些繁琐和容易出错的任务上花费太多的时间,比如在测试开始之前的准备数据,就可以用自动化测试工具来为他们做这一工作。一开始,如果他们不相信自己的话,你可能需要为他们做它。不管怎样,他们是第一次使用工具,他们都需要你的支持(“手把手的支持”)。如果你能确保第一次使用工具的经验让他们既愉快又有益,那么你可能已经改变了这些人的心态,他们会继续使用这个工具,因为它已经为他们提供了方便。

评估自动化测试的成果结果:

 一旦该工具有了相当数量的使用量,那就需要对原来的业务来进行一个审查来验证是否已实现或达到预期的目标。 也许会发现有些方面并没有达到预期的期望,但是在同一时间,我们也获得了一些其他的利益。

测试管理者需要根据其性能重新评估工具的使用,为继续进行自动化设置新的目标,并采取一些措施来衡量基础设施或自动化制度的有效性。 一旦你进入一个连续分析的自动模式和随后的自动化制度的改善,它永远不能中止。如果持续的关注度,那么它将会在一段时间内衰减。

从一个好工具获得效益的十点建议:

1)测试管理人员需要确保存在标准化的使用工具的方式,因为不同的用户很可能使用不同的方式使用工具。

2)同时选择软件测试工具的管理人员必须确保工具的“易用性”,不能以良好的功能性成本为重点。否则工具很可能很容易被误用。

3)在购买工具后,最高管理者必须在整个实施过程中给与工具有效的,持续的支持。

 4)最高管理层需要显示足够的耐心,提供工作人员足够的时间来学习和克服工具使用初期遇到的麻烦,否则该工具容易推广失败。

 5)变革代表必须持续不断地用用户的成功经验,对新的工具进行宣传。

 6)在项目计划、质量和测试计划中,测试管理者必须能确保解决与自动化测试相关的所有问题,

 7)测试管理者应努力为自动化测试创造一个有效的基础设施。

 8)要了解工具的实用性,必须定期评估投入和产出的比例。并从自动化测试项目中找到实现实实在在的益处。

 9)我们不妄图使一切自动化。记住,真正的好处是可以通过小部分的自动化测试来实现的。例如,回归测试,复杂的或容易出错的测试,难以手动执行的即时问题。

 10)在开始阶段,测试管理者必须对整个团队中10-15%的有所关注。这些人必须是意见领袖,他们渴望拥抱变化,可以自发的去影响变革的发生。


【英文原文:

http://www.softwaretestinggenius.com/tricks-involved-in-selection-and-implementation-of-test-automation-tools

{测试窝原创译文,译者:亚然}

译者简介:亚然,测试爱好者,长期从事软件测试工作



声明:本文为本站编辑转载,文章版权归原作者所有。文章内容为作者个人观点,本站只提供转载参考(依行业惯例严格标明出处和作译者),目的在于传递更多专业信息,普惠测试相关从业者,开源分享,推动行业交流和进步。 如涉及作品内容、版权和其它问题,请原作者及时与本站联系(QQ:1017718740),我们将第一时间进行处理。本站拥有对此声明的最终解释权!欢迎大家通过新浪微博(@测试窝)或微信公众号(测试窝)关注我们,与我们的编辑和其他窝友交流。
397° /3971 人阅读/0 条评论 发表评论

登录 后发表评论
最新文章