这又是那个山峰了。门槛很低,但通往精通的道路却很艰难。
在通往测试山峰的入口,我们倚仗的是这样一个事实:测试的很多方面都很容易掌握。大多数人都可以学得有模有样。甚至只要将一点点常识应用于输入的选择,就可以,我出缺陷。这个层次的测试就如同在桶里钓鱼,简单到足以让任何人都认为自,自己很聪明。然而过了入口以后,道路迅速陡峭起来,而测试知识变得越来越晦涩难懂。我们发现有人擅长于此,我们称这些人为“有天赋的人”,并欣赏他们的本能。
难道一定要依靠本能么?对于那些看起来不具备特长的人们,是否存在着一条翻越山峰的途径?是否可以以某种方法传授测试技能以培养出更多的专家呢?为认为这座山峰是可以通行的,而这一章正是我关于应该如何走这条路的笔记,你可以在自己的职业生涯中加以应用。这并不是一份食谱配方,一份职业生涯烹调书。不过你可以做一些事情来加速你的职业成长。但是,正如你可能已经猜到的,真正是说来容易,做起来难。
上山
测试职业的早期阶段主要是为征服测试山峰的漫长攀登做准备。我所能给出的最好的建议是从两个方面来思考问题。对于你参与的每一个项目,都有两部分(不一定相等)的任务。第一部分的任务是保证当前的测试项目获得成功。而第二部分的任务是学习你应该做些什么以便使下一个测试项目更加容易。我把它称为“测试今天的项目,准备明天的项目”。如果你做每一个项目把它都分割成为上述的两半,那么几乎可以保证你能持续获得进步。这样,你就可以随着每一个参与的项目逐渐成长为更优秀的测试人员。
现在就让我们来关注第二部分的任务------为下一个项目做准备。我们需要注意三个概念:重复、技术和漏洞。
重复
做任何一件事,绝不要重复两次而不意识到或质疑这其实是个问题。我希望所有年轻的测试人员都牢记这一点。我见过很多初学者,他们在单调的任务上浪费了太多的时间,比如,设置测试机器,配置测试环境,在实验室里安装待测试的应用程序,选择一个产品版本来测试-这些任务列表可以变得很长,最后你会发现真正花在测试软件上的时间少得可怜。
这是许多新手常犯的错误。他们没能看到他们日复一日所做的工作的重复本质,儿当他们意识到这种重复时,几个小时已经过去了,而在这几个小时内他们没有做任何实际的测试工作。关注这些重复劳动,并且留意由此造成的真正的软件测试工作时间的流逝。为了能翻过测试的山峰,必须做一个测试人员应该做的工作,而不是实验室管理员或者测试机管理员的工作。
测试自动化是解决重复劳动的方案,也是本章稍后的主题。
技术
测试人员常常会对软件失效进行分析。分析缺陷时,我们从开发人员的失败中学习如何编写可靠的代码。我们也分析那些被我们忽略的缺陷。在应用程序上市以后,客户就会开始报告缺陷,我们将要面对处理一大堆失效的情形并寻找其中的重要缺陷。用户报告的每一个缺陷都说明我们的流程用问题,我们的测试知识还不够完善。
但是分析我们的成功也同样重要,儿许多新入职的测试人员却没能利用这个唾手可得的资源。我们在测试中找到的每一个缺陷都说明我们的的测试流程正在有效工作,都是一次成功。我们需要紧紧抓住这种绝好的机会,只有这样才能使成功不断的重复下去。
运动队常常这样做,他们会观看比赛录像,并分析每一个动作为什么奏效或者为什么不奏效。我清楚地记得一个小故事,我的一个朋友拍下了我儿子踢足球的一些照片。其中一张照片记录了她踢球的瞬间,那个球超过对方守门员成功进球了。当我把它给我儿子看时,我之处他站立的那条腿的姿势非常完美,他踢球的脚尖紧绷且出球点在鞋带间恰到好处的位置上。他盯着那张照片很长时间,从那以后他很少用不正确的姿势踢球。他那次得分可能只是碰巧做对了,但从此以后他有意识的运用这些技术使之接近完美。
现在回到新手测试人员的课程上来。我们每一个人都会有得意的时刻。我们找到重要的漏洞或发现优先级很高的缺陷,并为此雀跃不已。不过先花点时间考虑一下整体状况。我们使用什么技术找到了那个缺陷?我们是否可以创建一种方法来找到更多这类缺陷?我们是否可以记住…些实际的测试经验并不断地加以应用来帮助提高我们的工作效率?软件的哪些症状可以提示我们它具有缺陷?我们将来能否从那些症状中得到更多的警示?换句话说,这不仅仅是一个缺陷或是一次成功,这个缺陷教会了我们什么,是否使得我们将来成为更好的测试人员正如我儿子的进球一样,尽管第一个缺陷是偶然间发现的,但它不代表其余的成功都是偶然。理解我们成功的原因很重要,只有这样做,成功才能被复制。对于测试人员来说,这种保证成功的原因就是一系列的测试技术、建议和工具,它们可以提高我们在未来项目中的工作效率。
原文转自:http://www.cnblogs.com/skytraveler/p/3546703.html