测试能力是一件棘手的事情,因为测试人员会做不同类型的事情,这些事情都有自己的能力。成为世界级测试人员和世界级测试组织的关键成员之间有很大的不同。
例如,许多不认识我(但听说过我)的人认为我是一名出色的测试人员。的确,1)我希望我是,2)我努力工作变得伟大,3)许多看过我作品的人都会证明我的能力。但即便如此,我还是不太擅长测试的一些重要方面。例如,我的大多数仰慕者会承认我的外交技巧并不出色,我对那些对测试一窍不通,却擅自告诉测试人员应该如何工作的经理也没有多少耐心。(他们让我......太......生气......)嗯,无论如何,当我与可以发泄并且会原谅我发泄的人一起工作时,我处于最佳状态。
一个迷人、温顺、耐心、稳定的人 + 我 = 一个比我一个人更好的测试团队。因此,我们不应该对只允许优秀的解谜者进入我们的团队的任何狭隘想法感到太兴奋。
话虽如此,我建议这些是战术软件测试员的一些有趣的能力(意思是主要工作是设计和执行测试的人):
一种通过采访、观察、思维融合、真相血清或任何必要的手段温和、愉快、坚持不懈地从人们那里获取信息的才能。以使人们想要回答的方式提出问题的能力。我通过提出未充分说明的测试问题并观察提出的问题来评估这一点。
横向思考的天赋。从技术上讲,我的意思是一种才能(和耐心)产生和使用多种替代心理模型来解释和应对发生的技术情况。这种天资往往以另一个名字表现出来:幽默感。我通过对产品的行为或规范的状态提出现实的难题来评估这一点,并观察测试人员在分析过程中如何接受不同的可能性。
具有逻辑思维能力。这意味着在特定模型的约束范围内进行推理。为了评估这一点,我给测试人员一个测试框架的问题。我让他们描述一个测试,然后我让他们在测试中前后走动,要求他们准确解释他们为什么这样做,以及以不同的方式做这件事会产生什么影响。
热爱拼图的天赋。请注意,我并没有说解决难题的才能。这是因为我们必须应对的许多难题太难解决了。然而,无论如何,我们必须尝试。没有耐心和勇气去解决难题的测试人员注定会错过很多错误。
快速学习的天才。伟大的测试可以被描述为快速学习。一些不起眼的技术被扔向你的方向,你必须像饥饿的食人鱼一样跳上它。你一定对学习新事物感到兴奋。为了评估这一点,我寻找测试人员自学了一些复杂而有趣的东西的证据。但是,我更愿意通过给测试人员几个小时来测试我指定的网站来直接观察这一点。
讲故事的天赋。测试人员的可信度通常来自他们解释所发生事情的能力。为了评估这一点,我当然会采访。但我正在寻找能够讲述引人注目的技术轶事的人。
识别和使用工具的才能。这并不意味着编程,但编程技能肯定会说明这一点。
有写作天赋。这对很多测试人员来说很难,因为很多测试人员都用英语写作,而英语不是他们的第一语言。此外,通过计算机科学途径进行测试的测试人员往往讨厌写作。这就是为什么我对微软和谷歌等兴高采烈的技术官僚公司持怀疑态度的部分原因。
服务人才。测试是一项支持活动。一个喜欢帮助别人做得更好的测试人员(而不是攻击别人犯错误)会被程序员所珍视。就个人而言,我很擅长这一点。我给与我一起工作的开发人员一份 13 点的文件,概述我对他们成功的单方面承诺。
我不需要看到所有这些才能对测试人员感到兴奋。但我至少需要看到一些。在所有这些中,我认为快速学习是最重要的......虽然这可能是我的偏见,考虑到我是一名高中辍学生,写了一本关于教育的书。在我看来,自我教育就像一把能打开许多门的钥匙。
- 詹姆士