近喜欢偶尔静下来回想自己工作中曾经犯过的错,每每都能从中得到成长。突然想到了曾经的一段时间,那时工作很忙碌,同时错误百出。本以为自己是细心的,其实自己很傻很天真。看着自己屡屡犯下低级的错误,现在想想,除了自己马虎外,主要的是需求挖掘做得不够充分,方法不得当。

  记得曾看过一句话:软件测试的目的应该是验证需求。现在想想自己犯下的可笑的错误,才知道原因在于测试的起点“需求”出现了问题。测试像一艘船,产品是我们货物,而需求则是是货物的订单。只有获取的订单正确详细,才能把产品送到正确的港口,一旦错误将需要花费更大的成本返工,甚至造成更严重的后果。作为测试的第一步需求的挖掘至关重要。那么测试者应该如何充分的挖掘测试需求,根据我自己的经验总结有以下几点:

  1)从用户的角度挖掘产品需求。不需要细追究产品是如何实现的,以功能作为出发点概括性的了解产品。可通过产品设计人员或是产品需求说明书等文档类了解整个产品,为后续的需求挖掘打下基础。

  2) 从开发的角度挖掘测试需求。开发是产品的完成者,他们对产品的了解和测试人员或是产品设计人员有所不同,他们知道真正产品开发中的难点或是关键点在哪里,对产品可能出现问题的点具有较高的敏感性。可以通过开发人员找出测试的重点、难点,或是测试遗漏点。方式有很多:比如面对面的交流、测试计划以及测试用例评审等,这些方式都可以挖掘出测试需求。很多时候当开发提交给测试的测试需求并不一定完全暴露甚至隐藏的很深,需要我们以自己去挖掘,而且往往这里面隐藏了很多的问题。

  3)从部署者、应用方的角度挖掘测试需求。真正产品被应用时,需要一系列的环境要求、甚至性能要求,这些都是必要的测试点。可以通过和部署者或是应用方采集这些需求点,对于测试的准确性提供很好的帮助。

  另外,需求挖掘出来后,要及时的整理,在测试过程中,每一步测试都要严格按照测试需求走,只有这样子我们才能更好的更经济的完成测试。