去年毕业入职一段时间后,一次偶然的机会看到了Whittaker的《探索式软件测试》这本书,读过之后,感受颇多(关于读这本书的笔记可以查看我以前写的文章),最主要的还是对探索式测试思想的认同,因为入职后一直从事测试用例的执行及完善,不能很好的发挥个人的测试思维或者说对重复的执行脚本测试有点厌倦,就把探索式测试作为脚本测试的一种补充。此后大半年一直是有意无意的把探索式测试应用于测试中(也阅读了一些探索式测试方面的文章),成效感觉不是很明显,也没有一个很明确的思想指导,更像书中说的漫游,或者说一个是有模糊目的的随机测试。 最近项目不多,就在工作之余把刚买来的《探索式测试实践之路》看了一遍就先来说下这本书讲的主要内容:作者从探索式测试的定义开始,到探索式测试的思维模型,顺带讲解了启发式测试策略模型HTSM,接着介绍功能测试方法(即单个特性测试,交互特性测试和系统交互测试),探索式测试工具,探索式测试与自动化的关系,探索式测试与脚本测试的关系,然后着重讲解了探索式测试四象限。作者把探索式测试的一个完整的流程都覆盖到了,探索测试准备,实施,管理等等。但是同时还是有点失望,因为之前也一直关注两位作者的博客和写的文章,如季哥的探索式测试白皮书,还有史亮发表的多篇关于探索式测试的文章,书中的好多章节都是以前博客中的文章,还引用了Whittaker的漫游思想,没有让人眼前一亮的新的观点或者看法。不过还是很感激两位大侠的著作,里面的内容都是经验之谈,同时也让我对探索式测试有个很系统的认识。 今天把Whittaker的《探索式软件测试》又翻了一遍,谈谈自己对探索式测试的一点看法,看了很多关于探索式测试的文章,现在感觉还是没有抓住探索式测试的精髓,总感觉有点像有目的的随机测试,喊得响实际做出来成效的没有多少,或者是把有目的的随机测试冠冕堂皇的叫做探索式测试,区分于一向被鄙视的随机测试,让听者听着舒服,让领导听着有技术含量(有点偏激,呵呵),总之心里老是感觉怪怪的。在实际项目中自己也实施过探索式测试(ST为主ET为辅,对整个项目来说),感觉不是很理想,有时候有点像随机测试,如果目的太明确又有点像脚本测试。最近也一直在思考探索式测试,虽说大家一直在说探索式测试谁都可以来做,但是还是感觉探索式测试是一种基于经验的测试思想,你必须要精通传统脚本测试的各种测试设计方法,如等价类,域分析法,边界值、因果图、判定表、状态迁移、流程分析、正交实验等,知道了这些方法你才能在探索时随心所欲,如探索式测试多采用极端测试方式或者说复杂业务,而这些也是建立在传统测试方法之上的,不然实施探索式测试时你会有种思维枯尽的感觉,成效很小,也很容易陷入进退两难的地步。个人感觉要想把探索式测试的作用真正的发挥出来必须要先掌握传统测试设计方法及基本的测试技术,等你熟悉了基本模型和知识后,基于你对测试和实际测试项目的认识,对于像我们这些测试小生来说就可以直接去套,把大体测试模型或者策略架构画出来,根据实际的项目,环境等等去增删,去填充测试点,然后再用这些测试点去指导探索式测试,而不是像没头的苍蝇到处乱撞。
说了这么多其实就想说明一点,探索式测试虽好,但是不能过分崇拜(提醒自己),不要丢弃传统的测试方法和基本的测试技术及理论,不然根基未稳,到最后摔跟头还是我们自己,要把探索式测试放在一个适当的位置。
|