软件测试与三十六计
《三十六计》是根据我国古代卓越的军事思想和丰富的斗争经验总结而成的兵书,古人用兵最讲究谋略,在中国古代战争史上,精彩的谋略计策层出不穷,令人眼花缭乱,但万变不离其宗,大抵都逃不过这三十六计的范围。时至今日,“三十六计”在我们日常的工作和生活
《三十六计》是根据我国古代卓越的军事思想和丰富的斗争经验总结而成的兵书,古人用兵最讲究谋略,在中国古代战争史上,精彩的谋略计策层出不穷,令人眼花缭乱,但万变不离其宗,大抵都逃不过这三十六计的范围。时至今日,“三十六计”在我们日常的工作和生活中,同样可以有很广泛的应用。我是一名
软件测试工程师,并热爱软件测试这一职业,目前从事测试已有一段时间,虽然不敢自认权威,但我还是愿意将自身在从事软件测试工作中积累的一些经验,以及一些心得体会,借助三十六计中的若干计谋加以说明,与诸位同行分享。
总说
【原文】
六六三十六,数中有术,术中有数。阴阳燮理,机在其中。机不可设,设则不中。
【解析】
“兵以诈立”,多谋者胜。用兵要讲究谋略,“运筹帷幄,决胜千里之外”。同样的道理,无论从事什么样的工作,都需要讲究方式、方法。有了正确的方式方法,或者适时的运用一些小技巧,往往可以收到事半功倍的奇效。
第一计 瞒天过海
【原文】
备周则意怠;常见则不疑。阴在阳之内,不在阳之对。太阳,太阴。
【译文】
防备周全时,更容易麻痹大意;习以为常的事,也常会失去警戒。秘密潜藏在公开的事物里,并非存在于公开暴露的事物之外。公开暴露的事物发展到极端,就形成了最隐秘的潜藏状态。
【解析】
long,long ago,there is a 很厉害的
程序员,名叫关羽,他是计算机专业科班出身,又拥有二十几年的编程
开发经验,是当之无愧的资深
软件工程师。虽然关羽的专业水平无庸置疑,但是他有一个缺点,就是自视过高,骄傲不可一世,他常常认为自己写的代码十分完美,几乎已经到了自恋的程度。他看不起
测试人员,对他们提出的程序错误不仅不屑修改,甚至于不肯承认,并经常与测试人员起争执。有一年他在湖北荆州负责一个十分重要的大型系统的开发,而负责这个
系统测试工作的正是关羽向来都瞧不起的吕蒙。这个吕蒙原本学历不高,只有中专文化程度,并且还不大注重学习,提高自己的能力。直到有一次被他的上司孙权教育了一顿,从此发奋图强,进步神速,技术能力迅速提高,早已不是当日的吴下阿蒙。起先吕蒙将发现的错误上报给关羽,关羽并不理会,还是如同以往一样,找出许多理由来搪塞,一会儿说这是个技术难点,无法修改,一会儿又说这是当初的
需求没有写清楚。这吕蒙早就清楚关羽的为人,从此也不与关羽多加争辩,只是兢兢业业的做着自己的工作,将自己在
测试过程中发现的所有小错误一一如实记录了下来。等到测试报告出来的时候,关羽傻了眼。由于他一时疏忽而犯下的一个小错误,并且错误扩散到整个系统的每个角落,已经无法修改。客户大为不满,项目终于失败!而老板一气之下也把关羽炒了鱿鱼。关羽的一世英名就这样毁在自己的大意上面。这就是在IT业界流传很广,十分有名的“关羽大意失荆州”的故事。
从这个故事中我们可以得到以下几个教训:
1、越是厉害的人物,越容易阴沟里翻船,水平很高的程序员,也很容易因为不注意细节而犯下一些低级的错误。所以身为一名测试者,不能迷信权威或专家,对就是对,错就是错,要勇于怀疑一切。时刻牢记我们代表的是最终用户,并建立这样一个观点:即使一个错误不是程序本身的原因,而是因为操作不便而使用户造成,严格说来,那仍然是一个错误。
2、测试者与开发者的地位是相对独立,但绝不是势同水火,双方彼此同样是项目组的成员,在保证软件产品
质量这个大方向上是一致的,彼此都应该互相尊重对方的劳动成果,虚心对待。关羽的直接领导诸葛亮早就告诫过他这一点,让他一定要尊重测试组的劳动成果,不要双方闹翻。可关羽硬是不听,于是造成项目失败。
3、在测试工作中,测试者与程序员的沟通是十分重要的。在双方互相尊重的基础上,彼此都要本着对事不对人的原则,保持严谨的科学态度,共同完成软件的开发。上面的故事中,吕蒙的做法其实也不是十分的正确,不仅遭到了大量关羽的fans的指责,而且长久背负着做人不厚道的骂名,这些倒不重要,更为重要的是,最终整个系统、整个开发团队失败了,他同样是个失败者。更好的做法是在测试的工作中,就要注重沟通问题,当一个错误一直不被修改的时候,与开发人员沟通失败后,应该及时上报给项目的管理者,尽早寻求解决的方法,而不是将错误一直留到测试结束后才暴露出来,此时的错误可能已经造成十分严重的后果,测试报告写得再漂亮也已经没有多大的意义。基于以上陈词,本庭宣判:本案关羽负主要责任,吕蒙负次要责任。关羽斩首,吕蒙打五十大板!^_^
4、想要做好测试工作,学历和技术并不是最重要的,重要的是要有责任心和细心,中专毕业证书是中专学校发的,大学毕业证书是大学发的,而有了责任心和细心的测试员,就不再是普通的
测试工程师,而是优秀的测试工程师了。
原文转自:http://www.ltesting.net