探索性测试的适用性

发表于:2011-8-11 13:29  作者:陈能技 译   来源:51Testing软件测试网采编

字体: | 上一篇 | 下一篇 |我要投稿 | 推荐标签: 软件测试 探索性测试

  如果你也和我一样发现探索性测试值得一用,那么问题就来了:什么时候使用它?如何融入到软件生命周期中?

  探索性性测试的简单定义是:测试执行和测试设计同时进行。更具体的定义是:探索直到测试员能有效地控制测试设计,同时执行测试和使用测试执行过程中获得的信息来设计新的和更好的测试。

  这个定义包括单纯的探索性测试,探索产品和设计一个测试策略,基于你作为测试员对你的任务的理解而明确的测试,但是没有任何明确的指引。定义还包括阶段的探索性测试,你被分配到指定的测试,并明确了使用什么方法测试,但是没有设计好的测试步骤。定义还包括改进测试,你对测试进行详细说明或使用它来启发相关的测试。它也包括测试步骤的创建,因为你在执行测试的时候把过程文档化。

  关键是怎样做好探索性测试,而不是什么时候做探索性测试

  其实所有被人工执行的测试在某种程度上都是探索性测试,因为人不是机器。意味着问题不是你什么时候进行探索性测试,而是怎样做好探索性测试。当我给客户咨询测试过程时,我不建议他们执行探索性测试。而是帮助他们意识到他们已经在做的探索性测试,但是可能与某些剧本化的测试混在一起。一旦我把他们的探索性测试找出来后,我就能帮助他们改进他们的技巧和测试策略,以便他们能更好地进行探索性测试和其他任何测试。

  一开始测试时只能进行探索性测试

  探索性测试适合在在测试的开始阶段进行,因为这时候测试用例还不存在。即使存在,你也需要学习产品(这需要探索和盘问),测试用例需要被评审和更新。编写测试用例的过程就是一个探索过程。

  而且它也是你在后面创造测试多样性的方法

  探索性测试适合在测试项目的中间阶段,即使你有很多剧本化的测试用例。像一个旅客在旅游巴士上一样保持探索的感觉。让你所分配到的测试任务带领你访问产品的不同部分,然后对这些测试做即兴的暂时性的创作。花上几分钟做不同花样的测试,然后回到旅游巴士执行下一个剧本化的测试。

  它也是你确定测试过程有足够的多样性和创造性的方法

  在项目过程中,我会建议你质疑所分配的测试的价值,因为没有测试过程能提供完整的覆盖。为了改进测试的广度和深度,考虑分配一些时间,也许在每个测试周期分配20%或80%的时间(没有一个标准,取决于是否满足测试任务的需要)进行纯探索性测试。挑选一个或多个产品的风险区域进行测试的设计和执行,目的是快速地找到重要的问题并且收集信息以便帮助项目评估产品的状态。

  另一种把探索性测试融入项目的方法是指定一个测试员或指定某项测试持续地执行探索性测试。我曾经带领这样一支队伍,我也调查过一个在Nortel的人,他也带领这样的队伍。这些队伍都是训练有素的,像侦查连一样工作,跟踪产品和产品的不确定区域、风险区域。

  做好探索性测试需要技巧,不管什么时候做

  在我决定把同时进行测试设计和测试执行这种方法掌握好的之前,我也对测试过程感到迷惑。我最终发现了建模、推理、沟通和自我管理的特定启发、记录方式和技巧,这些东西使我在几乎任何情况下都能保持高效。探索性测试过程是创造性的,但是它是可以学到的一些原则,这些原则在任何测试员希望使用思想的地方都合适。

  原文:Where Does Exploratory Testing Fit? - James Bach


评 论

论坛新帖

顶部 底部


建议使用IE 6.0以上浏览器,800×600以上分辨率,法律顾问:上海瀛东律师事务所 张楠律师
版权所有 上海博为峰软件技术股份有限公司 Copyright©51testing.com 2003-2019, 沪ICP备05003035号
投诉及意见反馈:webmaster@51testing.com; 业务联系:service@51testing.com 021-64471599-8017

沪公网安备 31010102002173号

51Testing官方微信

51Testing官方微博

扫一扫 测试知识全知道