水因地而制行,兵因敌而制胜 ——测试感悟(针对手动、黑盒)
北大方正技术研究院 李守亮
1999年6月
编者按:这是一篇好文章,不在于他的文笔,而在于他的用"心"工作,用心总结。是他的工作经验和心路历程的记录,值得大家学习。
一直以来,总想写一写关于测试方面的文章。今天,真的接到这个题目时,却欲言又止,迟迟不能落笔。在这里,我也只将自己的实际经验介绍给大家,抛砖引玉,和大家共同探讨。
刚开始做测试的同事会有一种感觉,认为测试实际上是在充当这个产品的第一用户。也有人认为,测试其实很简单,没有什么技术可言。
其实,测试说易也易,因为进入门槛低;说难也难,因为测深测精不简单。黑盒测试很讲究策略,测试也是一门学问。
初涉测试的心路历程
对测试的认识,每个测试人员都有一个过程。我对测试的认识,在每个阶段各不相同,其中也走了不少弯路。在此,我用第三人称把自己对测试工作的认识过程写出来,希望后来的同事能从中得到启发。
第一阶段 学习+验证
对于新来的同事,刚刚涉及测试,往往踏不下心来。感觉测试是件没完没了地事情,并且单调重复、枯燥乏味,没有激情、没有成就感。这是很正常的现象,刚进入一个新的岗位,总有一个适应过程。
在这一阶段,新员工需要做的事情是,先学会使用所测的软件,熟悉他的每一个功能,弄清楚每一个功能的正确效果应该是什么?然后才开始尝试着去找一些肤浅的问题。这一阶段的感觉是:"测试实际上就是验证产品每个功能的有效性"。新员工这一阶段虽然不太出成绩,但却很重要,因为这是以后工作的基础。
第二阶段 与开发对立的误区
当熟悉了所测产品的功能,并且找到测试的感觉后,就开始较深入地测试了。
在这一阶段,新员工会逐渐发现一些严重的BUG。当看到自己发现的问题被解决后,才真正感觉到自己在参与产品的生产。渐渐地,渐渐地,就会感觉到测试其实也挺有趣。尤其是发现一些死机或特别严重的错误时,有时会兴奋上几个小时。这是他进入状态的必然过程。
此时,他对测试的认识是:"测试,就是要找出产品的缺陷,是证明当前产品不可用的一种行为"。这一阶段非常值得注意!很多软件公司常说:"开发和测试的行为是对立和矛盾的",这实际上是测试工作的误区。
第三阶段 与开发主动配合
随着测试经验的积累,对工作的认识也逐步深入。最后,他会发现,开发和测试之间,本质上是一个合作的过程,目标本是一致的。都是为了尽量减少发布产品中的错误,达到用户可接受的程度。于是,他会更多地站在用户角度考虑问题,测试的目的也越来越明确,工作也越来越主动。