学而时习之
还记得几个月前在读《探索式软件测试》这本书,当时了解探索式测试这一概念觉得新奇但认为也不过是一种测试分析和设计方法理论,实际工作中不能有效转化和利用就体现不了它的价值。最近重新拾起这本书来读,参考其他人对“探索式测试”的理解,重新总结一下对这一理论的认识和理解。
1.什么是探索式测试?
区分根据测试用例的测试丶自动化测试等测试方法,探索式测试是一种动态变化的测试,是测试分析丶测试设计丶review和执行的动态循环的过程,保持测试的动态化。探索式测试这种思路也不是首创,可能我们早已经在使用它,但理论的出现使得这种思路更容易被习得和实践拓展。
注:很多探索式测试相关的书籍就是作者吸收理论后转化为实践的一个实例,只是表达方式更通俗易懂,本质相同。
2.探索式测试的内容有哪些?
全局探索式测试:探索软件丶测试对象类比(建模)丶对象分解及类型对照
局部探索式测试:用户输入丶状态丶代码路径丶用户数据丶运行环境
混合探索式测试:通过场景引入变化丶基于漫游引入变化
3.探索式测试解决什么问题?
(1)一定程度提高测试覆盖率。随着测试的进展,我们对产品的理解加深了,这时候我们头脑中就会有新的测试思路,这种思路比较碎片化,往往需要及时应用到测试中产生效果。
例如,在设计用例的时候:总会担心测试覆盖率的问题,不自觉会自问自己用例设计思路是否合理,是否有所遗漏,这个过程就是将我们的测试对象建模和分解,将测试行为和测试模型对应的过程,以便我们了解自己已经覆盖到了哪些部分,还有哪些未覆盖的,化抽象为具体。全局探索式测试涉及到各种用例设计的建模方法和实践。
(2)为我们挖掘隐藏较深的bug丶复现难以复现的bug提供一些思路。
例如,在执行测试的时候:我们灵机一动觉得某种操作下可能发现更多逻辑缺陷,却没有比较合理的组合方式和操作路径,此时就需要某种明确丶合理的方向可依循来引导头脑中的临场思路,从而实现即时的想法,局部探索式测试就涉及到各种具体的测试方法。
4.探索式测试怎么转化自己的方法理论?怎么实践落地?
探索式测试也只是一种手段,用以帮助自己的测试分析设计丶测试执行过程形成一种风格和规范,让测试过程更容易理解丶分析丶流转丶改进,同样基于对业务的理解和分析前提。理解各种场景对应的测试方法,在实践中认识何时选取哪种方法以及如何组合使用,不断回顾丶总结和改善,逐渐转化为自己的测试思路。
参考书籍:
《探索式软件测试》
《赢在测试2》
网友评论