探索性测试(Exploratory Testing)概述

发表于:2007-8-20 16:26

字体: | 上一篇 | 下一篇 | 我要投稿

 作者:关河    来源:关河的测试生活

        在敏捷测试(Agile testing)中,探索性测试是作为一个重要组成部分而出现的,把“对系统的探索”和“对系统进行测试”结合在一起,敏捷测试可以利用探索性测试达成“敏捷”的目标。

        探索性测试并不是一个最近才被提出来的测试技术,也不是一种很深奥的技术——事实上,许多测试工程师在自觉或不自觉地使用这种技术。那么,究竟什么是探索性测试呢?

        对探索性测试的理解本身会存在一些争议,因此,很难给出探索性测试的准确定义,不过,一般来说,探索性测试具有这样的一些特点:
        1、探索性测试强调测试设计和测试执行的“同时”性——这个“同时”是相对于传统软件测试过程中严格的“先设计,后执行”来说的;
        2、测试工程师通过测试来不断学习被测系统;
        3、探索性测试的重点是创造;

        探索性测试的出发点是“测试者如果没有真正使用过系统,就不可能真正理解和掌握系统,也就不可能真正有效地测试该系统”,相信所有有过测试实践的测试工程师都会承认这一点,确实,在我们没有接触到一个真正的系统之前,很难完全认识到这个系统,虽然可以在测试计划阶段按照需求或是设计的要求写出测试方案和用例,但总觉得这些用例不可能具有太强的可操作性。

        事实上,探索性测试给出的另一个测试的思路:“如果我们可以在对系统的测试中逐渐深入地学习系统,测试是否会更加有效率?”在我看来,这个问题的答案是显然的,如果测试工程师能够在测试中对系统越来越深入地了解,那么,利用这些逐渐增加的了解,自然可以让测试变得更加有效率。

        探索性测试只是一种方法和思路,并不是一个确定的过程。因此,在使用探索性测试时,无法回避的是When的问题,也就是说,在什么时候进行探索性测试更加有效呢?我的答案是“在你认为合适的时候”:)因为,探索性测试可以针对不同的测试层面,例如,针对业务场景的探索性测试、针对功能点的探索性测试,甚至是头脑风暴式的探索性测试,都能够在测试中发挥积极主动的作用。

《2023软件测试行业现状调查报告》独家发布~

精彩评论

  • zyd10605
    2013-4-08 10:42:55

    在多年的测试经历中,一直使用“发散测试”这个说法,其实就是所谓的探索测试。探索测试的实质不是创造,是尝试。创造是create,尝试是find。问题客观存在,模块的耦合性客观存在,只是囿于对功能的深度和业务的熟悉程度,会造成设计漏测或执行漏测。

关注51Testing

联系我们

快捷面板 站点地图 联系我们 广告服务 关于我们 站长统计 发展历程

法律顾问:上海兰迪律师事务所 项棋律师
版权所有 上海博为峰软件技术股份有限公司 Copyright©51testing.com 2003-2024
投诉及意见反馈:webmaster@51testing.com; 业务联系:service@51testing.com 021-64471599-8017

沪ICP备05003035号

沪公网安备 31010102002173号