通过ODC方法改善软件测试:3个案例研究

发表于:2007-11-05 13:25

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

 作者:译者:fennek    来源:51Testing投稿

分享:

        图3表明在最初的几个月中,主要的缺陷出现于执行某个单独的功能时,正如图中的trigger(触发器)--coverage(覆盖)和variation(变量)所指出的那样。随后,在9月里,通过更为复杂的测试场景所发现的缺陷在增多,图中的trigger(触发器)--interaction(交互)、sequencing(连续)和software configuration(软件配置)可以说明这一点。 但是在大多数月份里variation是占主导地位的trigger(触发器)。Variation表示通过改变单个功能的输入参数所发现的缺陷。图2--活动和模块图,表明很多缺陷是从FVT(功能验证测试)中逃逸的,正如图中的trigger-- coverage(覆盖)、variation(变量)、interaction(交互)和sequencing(连续)所表现出来的那样。这些观测结果表明,我们必须对FVT(功能验证测试)过程进行改进,以确保逃逸的缺陷少之又少。具体点说,测试计划中必须包括更多的变量(variation)测试。通过对测试人员的培训,以及检查测试计划时对这一点的强调,我们可以实现上述的改进。

 2

小结  ODC帮助我们在过程中找出下列不足和改进措施
        多数缺陷是从FVT(功能验证测试)逃逸的。Variation(变量)是最普遍的trigger(触发器)。因此,团队需要对测试人员进行有关FVT(功能验证测试)中各种测试类型的培训,确保FVT(功能验证测试)的测试计划中有足够的变量(variation)测试用例。
        q模块中有太多的基缺陷。团队必须针对此模块区域增加回归测试的次数。
        大多数缺陷都在b模块中。团队要保证所有的变更都具备清晰的文档说明,同时保证一旦有代码发生变化,受其影响的基代码应被作为测试中的重点对象来对待。
        未来的计划  团队会继续对外部(发现的)缺陷进行分类,并利用此信息改进他们的开发和测试过程。ODC外部缺陷为定义用户惯用法的简档提供了基础,而简档可以帮助测试团队来复查缺陷。在新版本的开发周期中,这个团队也开始对“过程中”发现的缺陷进行分类,并与外部缺陷的分类进行了对比。这样的对比会为当前的测试过程提供更加准确的信息,并为将来的测试工作提供关注点。
Case Study 2: A large middleware project
案例2:一个大型的中间件软件项目
        这个案例中包含了一些隶属于IBM系列的中间件产品,这些产品可用于大部分的操作系统平台。它们都是由几百人的团队开发的成果,开发过程遵循典型的瀑布过程,通过各个阶段的判定检查点评估产品是否可以进入到下一个阶段。
        产品团队中最先开始使用ODC的是测试组。而测试组正处于重组的过程中,以期通过此来解决一些问题。他们需要一套度量规则,使他们可以客观的评估他们的进度,并面对一些他们自己的问题,这些问题是:
        单元测试阶段,功能验证(FV)阶段和系统测试阶段,三个阶段互相叠加进行。理论上讲,这些阶段都是假定为有序的阶段,但是它们会经常叠加,有时是完全地叠加进行。系统测试的入口检查点的目的是判断前一个测试阶段的进度,测试是否充分,是否可以进入到系统测试的阶段中。而他们需要的度量规则能够为这一判断提供可度量的、客观的数据,而不是个人的(主观)意见。
        测试组开发了大量的测试序列,但是他们并不知道这些序列的有效性如何。他们只有两个度量方法:(1)缺陷--上升和关闭率 (2)测试用例--执行率和测试用例结果,如成功或失败。
        这些度量方法度量了测试进度,却不能说明测试的有效性如何。而ODC可以提供客观的、可量化的数据,对组织寻找的判断依据而言是非常必要的。
        ODC过程  分别由两个项目组对ODC过程展开实验,并以一系列的培训讲座为开始。团队成员参加的培训内容包括1小时的概貌介绍,以及2小时的关于如何分类缺陷的详细培训。其中的一部分测试人员和开发人员还要参加一个2小时的关于如何确认数据的课程。一个月后,很多人都接受了2小时的评估培训,学习如何复查数据,以及如何开始使用这些数据。
        数据由确认小组每周进行一次确认,以保证分类的正确性,并纠正每个错误。随后,由评估小组对数据进行复审,并评估项目的状态,决定是否需要采取某些特定的行动。对于个别项目,可以选择合适的时机进行评估。
        评估  在评估期间,他们决定是否可以开始系统测试,以及需要对系统测试和功能测试做哪些改进。
        提早进入系统测试的一个案例.  在这个产品的FV(功能验证)阶段进行到大约四分之三时,项目组开始使用ODC。七周内,项目到达了系统测试入口的判断检查点处。虽然ODC数据在那个时候还没有被正式地纳入到决策的过程范围内,但项目组还是饶有兴趣地复查了这些数据。为项目组启动系统测试提供的支持,证明这些数据是非常有用的。
        进入系统测试的(判断)标准之一是“FV(功能验证)的覆盖度超过百分之八十,而且完成了不少于百分之五十的功能验证”。在这个案例中,FV并没有达到百分之八十的覆盖度目标,但是有超过百分之七十的功能验证都完成了–非常高的通过率。此外,FV团队相信代码已经非常稳定了。图4则展现了activities(活动)和triggers(触发器),说明:
        功能测试的范围已经很大了,达到了ODC triggers(触发器)的范围。Coverage(覆盖)、variation(变量)、sequence(顺序)和interaction(交互)测试包含了所有已暴露的缺陷。实际上,在使用更复杂的系统测试的triggers(触发器)时,如recovery/exception(恢复/异常)和startup/restart(开始/重起),项目组已经让缺陷完全地暴露了。
        功能测试进入到更为复杂的triggers(触发器),意味着产品的基本功能已经稳固,准备进入系统测试阶段。这个暗示为FV团队的“直觉”提供了支持。

版权声明:51Testing软件测试网及相关内容提供者拥有51testing.com内容的全部版权,未经明确的书面许可,任何人或单位不得对本网站内容复制、转载或进行镜像。51testing软件测试网欢迎与业内同行进行有益的合作和交流,如果有任何有关内容方面的合作事宜,请联系我们

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

关注51Testing

联系我们

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

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

沪ICP备05003035号

沪公网安备 31010102002173号