(转)成为世界级的测试员

2013-02-18  白云 

      测试员就是知道事情会有所不同的人。

       这是Jerry Weinberg对于世界级测试员的描述,提醒我们测试与批判性思维与想象力有关。不相信任何的表面价值,而是维持一个调查的心态。

       测试是为了评估一个产品而质疑它。

       这个关于软件测试活动的定义来自于James Bach,包括测试的多个重要方面之一:发现和传递信息。软件测试会揭露未知。

       如果质量对某人有价值,那么测试就是发现任何威胁这个价值的服务。为了提供这种服务,测试员需要做许多不同的事情,例如问一些好的问题,在需求上注释,用一种使产品产生有用信息的方法与产品交互。

我对于一个世界级测试员的定义是:可以快速发现与产品高度相关信息,最大程度使用资源,并且拥有项目相关人员的尊重。这个人是可以信赖的。

       那么,成为一个世界级的测试员,需要拥有什么技能和心态呢?使你避免被描述为“点鼠标的猴子”,有哪些方面需要做好呢?

技术熟练

       在管理的更高层次,软件测试通常只被视为一种技术学科。他们认为你做为一个测试员的效力取决于你开发测试代码的能力。但软件测试还有许多方面是不能自动化。人类非常擅长思考和适应基于上下文新出现的信息。因为软件是一个不停改变功能与状态的系统,有时候做探索来的更有效率。自动化是与之相反的,因为它牵 涉到脚本的过程。

       然而,自动化可以释放测试人员的时间做更多的探索发现。任何重复性或枯燥性高的工作都适合自动化。自动化在这些领域非常有价值。

       开发强大和可维护的自动化是困难的。我相信一个平庸的软件开发人员是不能够达到这样一个工作的要求。如果你想做有用的自动化,你最好除了其他测试技巧之外,还拥有优秀的开发技巧。

以下我认为可以帮助你的更多的技能和心态:

调查性的好奇心

       如果你认为测试是必要之恶--阻拦您做出很cool东西的事情--你可能会错过很重要的问题。世界级的测试员不断地探索他们产品的可能性和限制。同时对他们产品的能力保持一个健康的怀疑态度。

       如果你想给自己一个花哨的头衔,把自己想象为“强迫性庸医”,被不可抑制的探寻真相的冲动所引导。世界级的测试意味着遵循弄清事情真相的冲动,直到有足够的经验价值才停止。当你看到一个测试人员回避未经证实的假设,这是他们认真对待工作的标志。

观察的技巧

       如果你想观察某样东西,你首先需要注意它。观察是注意重要或者有意义细节的能力。测试时,你需要能够观察到不寻常的状况。

       在你观察的领域,谁会是一个好的老师呢?跟一个五岁的小孩一起走,看看什么会抓住他的注意:人行道上的小裂纹,花园里美丽的花,在墙上慢慢爬的蜗牛。小孩是天生的观察家,他们对任何发生在周围的事情都感兴趣。他们的频道是敞开的,他们快乐的观察。

       把你的频道打开,模仿孩子般的行为。训练自己的注意力,更近的看,慢慢地,观察。

沟通技巧

       你会碰到不得不保护你的发现的情况。你必须说服人们采取行动,所以你要解释为什么你的发现是相关的。世界级的测试员联系描述他们的测试。他们知道他们的解 释必须超越“我测试过了,相信我”。如果你能够描述您的测试,那么人们会相信你是知道自己在做什么的那种人。有一个方法,就是使用启发式测试战略模型来描述你在做的东西。或者,你可以提出你自己的模型。

       当你将你的故事时,记得沟通是双行道。世界级的测试人员跟进他们提出问题的答案,他们对从谈话中得到的新信息很警醒。

写作技巧和bug宣传

       最丰富的沟通发生在你能够面对面交谈的时候。你观察面部表情,你可以对混淆和误解立马澄清。写作则不行。这个通道很窄,更容易引起误会。澄清需要时间和精力。

       Bug宣传通常伴随着写作技巧。你描述问题准确和可理解的能力影响正确的bug得到fix的可能性。不是每个报告的bug都会被fix,但那些应该被fix的最好不要因为贫乏的措辞而被忽略。

       一个bug报告是一个有说服力的文档需要影响正确的人去行动。把不相关的信息从bug报告中删除,也别向小报头条一样在读者眼前尖叫。

       你可能想要保存你过去的bug报告的记录。哪一个产生了混淆?你可以写得不一样么?措辞的修改是不是会更容易理解?

领域知识

       作为一个测试员,你不只是比较规格说明与实现。还有许多不同的指标,例如:用户体验,与同类产品的一致性,或者你的产品的历史,你可以用来识别问题。领域 知识也是你可以开发的一个指标。与客户交谈。与市场人员交谈,花一天做客户支持。你对于你的生意来说什么最重要知道的越多,你可以做更好的判断。

学习的愿望

       你是一个知识工作者。知识不是静态的,尤其对于技术领域。不断地学习是为了变得更好。人类与软件交互的情况是一个软件与人交互的情况。理解双方如何工作是非常有好处的。我推荐探索社会科学(认知心理学、社会互动理论等)以及增加你的技术教育。

       我认为,每个想做的真正好的测试员会从参加优秀的BBST(Black Box Software Testing)课程中受益。然后是RST(Rapid Software Testing)课程。。。。

交际技巧

       测试员经常抱怨他们的工作以及如何可怕的其他人都让我热血沸腾。自我受难是有毒的。有时候你必须放下。如果你不能做到,你就会被人觉得牢骚满腹。如果人们周五晚上喝啤酒,你没有被邀请,想像一下人们跟你合作的意愿吧。

幽默

       幽默可以帮助维持你的理智。作为一个测试员,你经常生活在压力的环境中,微笑和大笑减少了压力荷尔蒙的危害。他帮助你专注于你所做的事情:测试。

练习

       首先,你需要练习你的技巧。如果你不练习,你不能达到熟练。当你练习的时候,观察自己,找到需要提高的领域,深思熟虑和自我反省你的行动。

结论

       成为一个世界级的测试员的目标不意味着一个目的地,而是到达新的领域的持续旅行。这个探索从无止境,使人愉快,并且使软件测试如此有意义!

 

快乐的测试吧!

-------------------------------------------------------------------------------------------------------------------------------

转自:http://www.51testing.com/?uid-5175-action-viewspace-itemid-837303

401°/4008 人阅读/1 条评论 发表评论

车文智  2013-02-22

大多数人同


登录 后发表评论