软件测试心理学

2010-05-28  李蕾 

1、成就感

  除了兴趣和好奇心之外,还有一个因素是驱使测试人员不断地工作的,那就是成就感。开发人员的成就感来源于创造、建设。测试人员的成就感来源于破坏、指责。

  这种建立在破坏、指责带来的成就感,看起来好像不是很健康。但是其实每个人都或多或少的存在这种倾向。只不过是测试人员把它正当地使用起来了。

  人天生就存在两种倾向:建设倾向和破坏倾向。这也是为什么世界上会存在两种人:好人和坏人。

  这个世界上好人多还是坏人多?好像不能确定。毕竟好人和坏人的界限不是那么清晰。但是看起来好像是好人多一点,否则这个世界上要建太多的监狱了。这是因为我们都认为建设要比破坏要好!所以从小教导小孩子要听话,不要撕破书本,不要往墙壁上乱涂乱画。因此,我们大部分人长大后都做有建设性的工作。

  但是破坏性工作同样是非常有意义的。据说美国国防部就聘用了一些黑客来帮助他们防御电子攻击。在测试工作中,你可以尽情地尝试破坏软件,破坏的结果是找到缺陷,或者证明了软件的承受能力、健壮性、容错性。在破坏中找到乐趣、找到成就感。

  指责别人要比赞扬别人来得容易,给自己带来快感。所以大部分人不会经常赞扬别人,倒是经常指责别人。这也是为什么世界上那么多矛盾、吵架、争斗。赞扬是好的,但是在测试这里,赞扬没有指责好,我指的指责不是针对人,而是针对软件测试时抱着的一种心态。如果你满怀欣赏、赞扬的心态去测试一个软件,你看到的都是好的方面,那么怎么能发现缺陷呢?但是如果你是抱着指责、批判的态度去测试的话,你满眼都是关于它的缺点,你就会想尽办法让它暴露出来。
2、好奇心

 软件产品与硬件产品的区别在于,软件产品的设计制造过程更加依赖人。人相比生产硬件机器来说要更加不稳定些,因为人有情绪,人的心理状态决定他的情绪。那么我们在研究如何提高软件产品质量时,就不可能忽略一个重要的因素:人的心理问题。

  由于测试员的工作的特殊性,决定了他在这个角色上会有特定的心理特征,作为测试管理,应该研究这些心理特征和心理模式,以便在管理过程中充分考虑这些因素。

  好奇心

  “好奇心会把你杀死”,这句话在测试领域不适用,而且在这里越是好奇心强烈的人越容易成为优秀的测试员。

  对软件的功能好奇,对软件所能做的事情好奇,对使用这个软件的用户好奇,对软件在界面的背后悄悄做的事情好奇…这么多可以好奇的东西,这么多可以让你探索的东西,你是否有了成为“福尔摩斯”的冲动呢?

  软件测试就是在探索中学习软件产品,在探索中理解用户需求,然后用测试和调查来验证产品是否满足用户的要求。(参考 James Bach 的 What is Exploratory Testing ? 和 Where Does Exploratory Testing Fit ? )

  在我看来,测试就像坐着火车去西藏旅游,沿路经过很多有趣的地方,发生很多有趣的事情,看到很多有趣的人,这个过程本身就很丰富多彩。

  好奇心会让我想知道进度条的背后系统正在做什么勾当,驱使我去找程序员问个究竟或者看他们的代码是怎么写的。好奇心会让我想搞清楚究竟系统能承受多少个并发用户的访问。好奇心驱使我在想将来的用户会用这个软件做什么事情,他们会怎样摆弄这个软件,他们是否也像我一样觉得这个界面颜色不好看,像我一样觉得这个操作很繁琐。

3、兴趣

兴趣是最好的老师,如果对测试工作真正感兴趣的,就会不断地研究测试相关的理论知识、技能技巧、工具等。

  找到自己真正喜欢的工作,研究自己喜欢的东西确实不容易,因为很多人其实不清楚自己是否真的对这份工作感兴趣。很多时候是迫于生活压力而去做某些工作,有些时候是人云亦云,对热门时兴的职业趋之若鹜。

  我经常碰到一些应聘者来应聘测试员的时侯说,“我并不是不想做开发,只是觉得目前能力有限,还不能做开发,测试的门槛相对低点…”

  我想其实他可能只是对软件相关的职业感兴趣而已,并不是真正对测试感兴趣。

  随着测试行业的兴起,测试工程师的职业成了网络、培训机构操作的对象,很多人就是冲着这个“香饽饽”来的。

  除去这些原因,还是有些人真正为了自己的兴趣而选择了测试行业的。也有一些是当初并不确定自己是否适合这个职业,后来经过实际的工作,越发爱上了测试这份职业。

  如果我们真正去探究是什么让他们对测试如此着迷时(当别人都找不到BUG时,他还能找到,当别人都对重复的回归测试感到厌倦的时候,他还是抱着探索的精神,继续测试),我们可能要回到他的童年,看看形成他的这些性格因素对他的测试工作产生什么影响。

  小时候,我们经常会对着一个小玩具,噢!不是现在的掌上游戏机!它可能就是一个陀螺,甚至是一个拖把。我们也会对着它玩上半天也不会感到厌烦。我们会变着花样来玩它,我们扮演各种角色,把它当成道具,玩得不亦乐乎。

  现在的测试工作是什么,测试的对象有时候就是个玩具,只不过有些看起来过于严肃而已。如果我们能把软件当成玩具来玩,那么我们可能不会那么快就认为测试已经可以停止了。因为还有那么多有趣的玩法还没尝试。

  如果你实在是玩腻了,还大可以把玩具狠狠地甩在地上,用脚踩几下,看它有什么反应。哈哈,这也是一种测试方法!你是在进行破坏性测试!(参考James A. Whittaker的How to Break Software)

  把你的小脚踏车一边又一边地从斜坡上冲下来,每次装上不同重量的东西,看装上哪一种东西会最快。哈哈,原来你是在做压力测试!

  这些曾经在小时候觉得那么好玩的事情,现在你在测试时是否也能重温得到呢?

441°/4365 人阅读/5 条评论 发表评论

冯甜甜  2010-05-28

那你感觉让一个没有经验的人去面试测试工作的话,如何才能让面试官喜欢你呢?


李蕾  2010-05-28

冯甜甜: 那你感觉让一个没有经验的人去面试测试工作的话,如何才能让面试官喜欢你呢?
面试之前先了解一些测试理论,通过一些途径了解你要面试的公司的产品,充分体现出你对他们公司的兴趣,对他们公司产品的兴趣,至少让面试官知道你很关注他们公司


冯甜甜  2010-05-28

李蕾: 面试之前先了解一些测试理论,通过一些途径了解你要面试的公司的产品,充分体现出你对他们公司的兴趣,对他们公司产品的兴趣,至少让面试官知道你很关注他们公司
恩,谢谢啊!你能不能推荐几本比较好的软件测试理论的书籍啊!现在各种各样的书籍太多啦!不知道哪本好些?


李蕾  2010-05-28

我在看“软件测试方法和技术”这本书,清华大学出版社,朱少民 主编,这本书也是同事给我推荐的,不错的。你还可以经常上51testing网站上看看,看看别人的测试思想也是一种学习,呵呵


师芳  2010-06-11

看了后好像有点感觉啊,我总觉得我挺喜欢测试,感觉我的性格好像也挺适合干测试,也特想干这工作,但我又没真正参加过实际的测试工作,就是看了一些测试的书,所以面试的时候面试官总会问为什么喜欢测试我就回答的不那么自信了,只是说“自己的好奇心比较重,喜欢逻辑推理之类的东西侦探之类的,发现缺陷的成就感等之类的”但总觉的回答的弱弱的感觉,面试官对我的回答好像也不以为然,但我真的不知道该咋么说,请指点指点,谢谢了!!(我是个应届毕业生还没参加工作呢)


登录 后发表评论