谈谈测试中的探索性思维
不知大家是否有看过《探索性测试》这本书,里面讲的是探索测试中的一些思维。先问一个问题,有没有人会这样想:测试比开发要难。有人会说,开发要求掌握的技能比测试的技能更精,怎么会测试比开发难呢?
先听听我怎么想的,开发和测试由于角色的不同,必然会导致一些思维的不同。如一般的开发人员更多站在编码的角度(这时候一般称作程序员),他们拿到规划经理的需求文档时,立马进入设计阶段(需求细化一般做的不是很到位)。ok,编码很快完成了,但是开发人员在编码的时候,设计产品的时候有没有想过如何测试呢?如果设计出来的功能不知道如何测试,你设计的产品也终究算是败笔。
测试人员就不一样了,他们需要细化各种开发的产出,也许只能从开发几句简单的userstory中就要细化各种测试需求,从开发简单的设计图就要定位可能的风险点,这种种过程是一个不确定的过程,测试获取的数据很有限。抽象化到具体化真的不是一般的难。另外,想想你所在的公司有没有这种现象,开发人员设计子模块时思维基本上是正向的,而测试人员不仅仅需要正向思维,更多的需要逆向思维,还要有一部分破坏思维和发散思维,发散思维也就是这里讲的探索性思维。
一个脑筋急转弯:什么情况下0>2,2>5,5>0是正确的?获取的数据如此有限,你是如何思考的呢?这个思考的过程就是探索的过程。
越来越多的测试技术可以更快更高效地保证软件质量,但是不管技术或者平台、流程有多么的出色,总有一些东西会是工具想不到的。这时候就需要探索性思维发挥作用了。其实开发人员和测试人员很大一部分差别就是探索性思维,如何更好地去探索我们的产品,以后再细说自己的理解