流程
在我们开始谈论实施测试工具中流程的重要性前,让我们先看看“流程”到底是什么。牛津字典将它描述为“为了实现某特定终目标而采取的一系列行为或步骤”。一个流程的行为或步骤是一系列的一部分,表明它们要按特定的顺序进行。这一系列动作的目的是获得特定结果。充分测试测试特定SUT以保证软件的特定质量水平。那么一个测试工具在这样的流程中起着什么样的作用呢?基本上,一个工具是用来使使用它的人生活的更轻松;它应该帮助任务更高效。因此,一个工具帮助流程绪,例:通过让用户按特定顺序采取特定动作。也可以帮助使特定动作更简单且/或更好且/或更快。谈到一个项目中的测试工具时,必须决定应该或可以用特定工具改进流程的那个部分。测试工具并不是一个小玩意。它不是要让你的同事对你用的新技术钦佩。它是改进流程以便更快、更好、更便宜地实现目标。在说任何工具或技术前,有必要问问你自己“为什么我们首先想要实施工具?我们真的需要工具吗?”好再问问“我们能改进流程吗?”——丝毫不考虑使用工具!
现在,如果组织内部现存流程事实上可以改进且一个工具可以有效帮助改进,那么这时候该决定哪个工具能够做到改进流程。将需求列出来或许是个不错的开端——考虑一下must-haves, should-haves以及could-haves。不看技术。忽略需求或要求或许很诱人,因为你觉得他们无法满足现在的技术。当你列出可能会改进流程的工具需求时,是时候看看特定工具和技术了。但是,看你的(现在或将来的)流程时,一定要考虑:任何流程都可能会在取得目标时失败。这把我们引向了看测试工具时重要的因素:人。
人
人可以创建或破坏任意一个项目。没有专注的人,终任何项目都会失败。因此,人是迄今看测试工具时重要的因素。实施测试工具时,首先要考虑的是讲使用工具的人。当人们对现在的流程感觉满意且不懂为什么要改动时,那么聪明的做法是一点儿都不要改动。或者你可以让相关人员看到需要改进的原因以及改进后有啥好处。审视人这一要素尤其是测试员时,不少迹象表明需要对现在的流程做出改进,测试工具的实施要适当。例如:
▪▪测试员不再认为其工作有挑战性了。它成了一项例行公事。
▪▪测试员努力找出做手头任务的动力;他们更想接触新事物而不是一遍又一遍地执行同样的老测试。
▪▪测试员觉得他们的工作过时了。
▪▪测试员喜欢新技术的挑战,甚至可能为了先进的测试工具是日常工作一部分的工作而离开当前工作。
▪▪测试员以前已经用过测试工具且信任它们。当这些迹象在一个项目中呈现出来时,明智的做法是深入调查工作上到底正发生什么。要做的事之一是挑剔一下现在的流程,看看它们是否仍然可行,是否可以改进。测试工具的实施或许可以帮助改进流程并使测试员在他们的日常工作中更开心。但是,把事情安排地有条不紊很重要。一个测试工具绝不能成为任何问题的解决方案,它只能帮助解决问题。因此,审视测试工具的成功实施,总会按顺序用到人,流程,技术。人应该被包含在内,且大多数会选择改进流程。需建立流程并使之在引入新测试工具前要达到成熟的水平。做到这一点,那么是时候考虑工具和技术。
为何测试工具实施会失败?
既然我们已经了解了人-流程-技术顺序的重要性,有可能回答“为何测试工具实施会失败?”回答通常是技术被放到人和流程之前。当一个流程还不够成熟,那么工具无法改进流程的。大可能是强调流程仍没效率这一点。因此,在一个失败的流程里引入一个测试工具只会使问题更严重而无法帮助解决问题。当优先考虑技术而非人时,更有可能测试工具实施会失败。当人们对其在做的工作不满意时,单单一个工具也不能让他们突然满意起来。
生产效率低时,可能是流程出了什么问题。工具不会自动提高生产率。后,当引入一个不被人们支持的测试工具时,实施必定失败。人们应该看到改进某特定流程的必要性,且应该意识到引入一个特定测试工具可能后能帮助更高效地完成他们的工作。如果一个组织没有把这三点按序排好,那么“有了测试工具,傻瓜仍是傻瓜”这句话成真了。或者换句话说,一家只为实施测试工具而实施测试工具的组织终会出丑的。
版权声明:本文出自 SPASVO泽众软件测试网:http://www.spasvo.com/news/html/2014928133423.html
原创作品,转载时请务必以超链接形式标明本文原始出处、作者信息和本声明,否则将追究法律责任。