探索式软件测试:基本概念介绍

  • 如果你在Google里面搜索探索式测试会出现948W条左右的信息(最近真的是很火)、但是我却是在最近才对这项新颖的软件测试方式有所了解。其来源在James一书《探索式软件测试》中所做的系统介绍。在阅读完这本《探索式软件测试》一书后在淘宝QA博客上面发现了淘宝测试团队所编辑的《探索式软件测试白皮书》相对《探索式软件测试》这本经过翻译之后的书籍而言《探索式软件测试白皮书》可能更适合国内的读者、如果你是第一次了解探索式软件测试的软件测试从业者建议先阅读《探索式软件测试白皮书》然后在去仔细研读《探索式软件测试》。
  • 下面的内容来源于《探索式软件测试》和《探索式软件测试白皮书》以及互联网上面的一些文字、这里整理了一下。

  • 探索式测试是一种自由的软件测试风格,强调测试人员同时开展测试学习、测试设计、测试执行和测试结果评估等活动,以持续优化测试工作。考虑到它所具备的即兴发挥、快速实验、随时调整等特征,其思维方法可以追溯到软件开发的最初岁月。作为一个特定的技术术语,它是由测试专家Cem Kaner博士在1983年提出的,并受到语境驱动的软件测试学派的支持。测试专家James A. Whittaker曾是Cem Kaner在佛罗里达工学院的同事,后来担任过微软测试架构师和Google测试总监。基于在微软的工作经历和积累,他撰写了《探索式软件测试》一书,进一步扩展了探索式测试的概念和方法。

 

  • 首先,探索式测试是一种软件测试手段,而不是一种具体的软件测试技术(如等价类划分、边界值分析、组合测试等)。作为一种思维方法和手段,探索式测试强调依据当前语境选择合适的测试技术,而不局限于特定的测试技术。虽然James A. Whittaker将他的书命名为《探索式软件测试》,该书所提出的方法集仍旧属于软件测试技术,而不代表整个探索式测试。Whittaker的工作是很有意义的,本文指出它不是探索式测试的全部,是为了强调:当你和别人讨论”探索式测试“时,你们得达成共识。你们是在讨论一种思考方法,还是在讨论这种思考方法指导下的测试技术。

 

  • 其次,探索式测试强调独立测试人员的个人自由和责任,其目的是为了持续优化其工作的价值。测试人员应该为个人和团队负责,调动所有能量,发挥人的灵活性,在整体上持续优化个人和团队的产出。这段描述和精益生产、敏捷软件开发的理念高度一致,这也是探索式测试受到敏捷团队欢迎的原因之一。

 

  • 最后,探索测试建议在整个项目过程中,将测试相关学习、测试设计、测试执行和测试结果解读作为相互支持的活动,并行地执行。实际上,人脑难以并行地执行多项任务。探索式测试旨在将测试学习、测试设计、测试执行和测试分析做为一个循环快速地迭代,在较短的时间内(如1个小时)完成多次循环,以不断收集反馈、调整测试、优化价值

资料下载:

获得:《探索式软件测试

下载:《探索式软件测试白皮书

《探索式软件测试:基本概念介绍》有0个想法

  1. 软件测试行业的新手、第一次听说探索式软件测试、学习了。不过还是不是很理解、、、可能是我太笨了吧、
    当然了要是您能在详细的解释下就跟好了

  2. sam 你们公司有没有在做探索式软件测试的实践的、或者是有没有通过这个方式来做过一个项目?不知道效果怎么样

    1. 目前我的项目中也还没有开始做探索式测试的、不过我已经在做局部的探索式测试了、如果效果明显的话、我准备在项目组里面推广下。

    1. 我在我现在的项目中在实践探索式测试方法了。目前还在实践中没有办法给出相应的文档也没有办法给你解释下效果怎么样。不过就快有结果了、到时候我会重新写一篇文章来介绍一下

发表评论

电子邮件地址不会被公开。 必填项已用*标注