无论开发和测试,都是建立在需求之上,围绕需求展开,因此,需求对于开发和测试的重要性不言而喻。我想很多测试人员可能都有过这样的经历,就是在测试过程中遇到需求不明或者认为需求存在遗漏的情况,针对前者,我写过一篇应对策略的文章《如何应对不明需求做好测试》,当然这也只是自己的一点摸索,然而对于后者,我仍然在思考中,因为需求的遗漏如果是在测试过程中发现,还算是一件不坏的事情,我们还可以将它解决,若是换作在测试结束后才发现,那问题自然变得不可控制,出现bug也只是轻重多少的问题了。
事实是,测试人员经常尴尬的遭遇后一种情况,即发布后或出现问题后才意识到需求遗漏。说其尴尬其实是因为,需求的遗漏虽然不是测试人员造成,需求的收集整理也并非测试人员的职责范围,但是查漏补缺确实是测试人员不可推卸的责任,并且,经过测试人员评审的需求,出现问题,当然逃脱不了干系。那么测试人员到底在测试过程中怎样及时发现需求遗漏呢?
其实有一点我认为我们至少可以做到,就是在任何我们对需求有疑问的地方都要发散出去,将问题搞清楚。比如当你理解的需求与PDM提出的需求,或者开发理解的需求不一致时,这个时候就应该深入分析,为什么会产生不一样的理解。因为当不一样发生的时候,往往潜藏了遗漏。就像只有完整的句子才不会产生二义性,没有遗漏的需求才会让开发、测试达成一致。
另外一点,测试人员也需要提高“主人”意识,不要只是被动的针对即有内容的测试,我们也要以“上帝”(使用者)的角度去感受产品,或者想象产品应该具有的功能,然后与现有需求比较,找出遗漏。软件测试
其实我们有时候会抱怨需求为什么会考虑不周全,可是换个角度想想,我们认可程序会存在bug,那么需求同样也会有。这就像是一场接力赛,需求是第一棒,开发是第二棒,测试是第三棒,每一棒的交接都有上一棒的辛苦付出,也只有彼此信任和共同的努力,才能最终传递胜利。