关闭

探索式测试实践之缺陷大扫除和结对测试

发表于:2012-4-11 10:54

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

 作者:高翔    来源:51Testing软件测试网采编

  探索式测试的定义在我的blog都做了较多说明,其中也谈到了探索式测试在项目的实践方式,接下来会详细的说明其中两个实践方式的具体实施过程。

  探索式测试四象限

  探索式测试是一种测试风格和思考方式,它强调的是学习在测试过程中的作用。无论测试人员在做功能测试性能测试安全测试或其他类型的测试,都可以使用探索式测试的思维方法,来帮助自己找到初始测试设计未考虑到的危险区域。

  探索式测试不只是在脚本测试后才开始,它可以应用于软件测试的各个阶段。作为一种测试风格,探索式测试可以使用适合当前情景的任何测试技术(包括脚本测试常应用的测试技术)。那为什么我们还要把探索式测试和脚本测试分开呢?这是因为探索式测试的优势来源于并行地实施测试学习、设计、执行和评估,来源于测试人员在此过程中的积极探索和主动调整,如果一再强调把探索式测试融合在脚本测试过程中,将不利于观察到探索式测试的内涵和潜在效果。

  测试专家James Bach曾经对探索式测试(ET)和脚本测试(ST)在项目实践过程的变化进行了对比,请看下图

  从严格的脚本测试到自由式的探索式测试,James Bach做了如下解释:

  最左边的Pure Scripted,是严格的按照测试用例来执行测试,而且测试用例非常详细,在项目测试过程中较少存在这种现象。

  最右边的Freestyle ET,是自由式的探索式测试,在测试执行的时候不依赖于测试文档,只记录产品缺陷和风险除外;测试执行之前不需要任何特别的准备,比如测试设计。

  这两种测试方式都是不常见的,有些走极端的倾向。在项目测试过程中,不可能完全采用Pure Scripted或Freestyle ET。比较好的办法是在项目中混合脚本测试和探索式测试,并在不同的项目中采取不同的混合方式来制定项目测试计划。在大部分的项目测试过程中,综合脚本测试和探索式测试的优点可以得到较好的效果。

  目前许多测试团队以脚本测试为主导,偶尔在测试执行的时候发散性地去测试有疑惑的地方,但该发散性测试受经验、时间、功能特性、测试任务等众多因素影响,其结果无法跟踪,且经验不能传承。为了更好的组合脚本测试和探索式测试的优点,可以考虑尽量减少编写文档的时间,也可以考虑增加在测试执行时学习产品和技术的时间,从而带来更强的思维扩展性。

  下面简单介绍如何组合脚本测试和探索式测试过程中需要用到的几个关键性的因素:

  Vague Scripted:比较简要的测试用例,是对脚本测试(ST)的初步简化,可以理解为测试人员需要编写测试用例,(但不必编写详细的预期结果)。测试用例可以包含操作步骤,但描述比较简单,其目的是留下更多的空间给测试人员在测试执行的时候自由发挥。

  Fragmentary test cases:使用一句话或几个词语描述的测试用例,类似于脚本测试中的测试用例标题。

  Charters:探索式测试过程中使用到的一个非常清晰的任务列表,指出了要测试什么、怎么测试(强调策略,不是详细测试步骤)、寻找什么样的Bug、有哪些风险、要去检查什么文档等。

  Roles:测试过程中确定每个测试人员一个独立的角色去测试产品的某个部分。由测试人员自己掌控测试任务的进度和质量。

  接下来将说明在实际的项目测试过程中,如何组合探索式测试和脚本测试。下图展示了不同目的的探索式测试象限。

探索式测试象限

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

关注51Testing

联系我们

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

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

沪ICP备05003035号

沪公网安备 31010102002173号