我的测试感悟

发表于:2010-5-12 15:19  作者:龙女   来源:hipihiblog

字体: | 上一篇 | 下一篇 |我要投稿 | 推荐标签: 软件测试 软件测试工程师

  历经测试工作一年了,从刚刚开始的时候对测试的新奇,到现在的热爱,感触颇多,是该总结的时候了……

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

  兴趣

  兴趣是最好的老师,如果对测试工作真正感兴趣的,就会不断地研究测试相关的理论知识、技能技巧、工具等。找到自己真正喜欢的工作,研究自己喜欢的东西确实不容易,也十分的幸运,因为很多人其实不清楚自己是否真的对这份工作感兴趣。很多时候是迫于生活压力而去做某些工作,有些时候是人云亦云,对热门时兴的职业趋之若鹜。

  我常常在网上看到“我并不是不想做开发,只是觉得目前能力有限,还不能做开发,测试的门槛相对低点……”这样的话,我想其实他可能只是对软件相关的职业感兴趣而已,并不是真正对测试感兴趣,而且对于IT行业不了解,因为测试并不比开发的门槛来得低。

  好奇

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

  软件产品与硬件产品的区别在于,软件产品的设计制造过程更加依赖人。人相比生产硬件机器来说要更加不稳定些,因为人有情绪,人的心理状态决定他的情绪。那么在研究如何提高软件产品质量时,就不可能忽略一个重要的因素:人的心理问题。由于测试员的工作的特殊性,决定了他在这个角色上会有特定的心理特征。

  “好奇心会把你杀死”,这句话在测试领域不适用,而且在这里越是好奇心强烈的人越容易成为优秀的测试员。对软件的功能好奇,对软件所能做的事情好奇,对使用这个软件的用户好奇,对软件在界面的背后悄悄做的事情好奇,有着许许多多可以好奇的东西。

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

  成就

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

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

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

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

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

  指责别人要比赞扬别人来得容易,给自己带来快感。所以大部分人不会经常赞扬别人,倒是经常指责别人。这也是为什么世界上那么多矛盾、吵架、争斗。

  赞扬是好的,但是在测试这里,赞扬没有指责好,我指的指责不是针对人,而是针对软件测试时抱着的一种心态。如果你满怀欣赏、赞扬的心态去测试一个软件,你看到的都是好的方面,那么怎么能发现缺陷呢?但是如果你是抱着指责、批判的态度去测试的话,你满眼都是关于它的缺点,你就会想尽办法让它暴露出来。

  

  我时常去探究是什么让我对测试如此着迷时(当别人都找不到BUG时,我还能找到,当别人都对重复的回归测试感到厌倦的时候,我还是抱着探索的精神,继续测试)。

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

  工作

  现在的测试工作是什么,测试的对象有时候就是个玩具,只不过有些看起来过于严肃而已。如果我们能把软件当成玩具来玩,那么我们可能不会那么快就认为测试已经可以停止了。因为还有那么多有趣的玩法还没尝试。如果你实在是玩腻了,还大可以把玩具狠狠地甩在地上,用脚踩几下,看它有什么反应。哈哈,这也是一种测试方法!你是在进行破坏性测试!(破坏性测试可参考James A. Whittaker的How to Break Software)

(以上言论仅代表作者的个人观点,不代表51Testing观点)


评 论

论坛新帖

顶部 底部


建议使用IE 6.0以上浏览器,800×600以上分辨率,法律顾问:上海信义律师事务所 项棋律师
版权所有 上海博为峰软件技术股份有限公司 Copyright©51testing.com 2003-2021, 沪ICP备05003035号
投诉及意见反馈:webmaster@51testing.com; 业务联系:service@51testing.com 021-64471599-8017

沪公网安备 31010102002173号

51Testing官方微信

51Testing官方微博

扫一扫 测试知识全知道