应用质量特性提高测试效率和产品质量

发表于:2011-5-13 11:22

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

 作者:郑文强    来源:51Testing软件测试网采编

  什么样的软件产品可以称为高质量的?测试人员在测试过程中,执行的测试用例完全覆盖了需求规格说明中的需求条目,是不是就可以认为测试对象的质量满足了要求?或者说,软件产品的所有功能都可以正常运行,并且按时交付给了客户,客户是否就对该产品的质量感到满意?

  为了更好的回答该问题,测试人员有必要首先了解一下质量的含义。质量是什么?IEEE Std 610中对质量的定义是“组件、系统或者过程满足指定需求或者用户/客户需要以及期望的程度”。Jerry Weinberg对质量的描述是“Quality is the value to some person(质量是可以为一些人提供的价值)”。

  从质量的描述中,可以看出质量是带有内在主观性的:对于同一个产品,不同的利益相关者对质量的理解和要求是不一样的。因此,为了提高测试效率和产品质量,有必要在测试设计和执行过程中不断的应用质量特性。

  下面通过一个实际的案例分析,阐述了如何在测试过程中应用质量特性来提高测试效率和产品质量:分析测试过程中存在的问题,应用质量特性定义适合组织和产品特点的测试类型,通过测试类型的应用提高测试在质量特性的覆盖率,从而不断提高测试效率,实现测试质量的不断提升。

  案例描述

  宽带接入系统IPDSLAM为客户提供ADSL宽带上网业务,其中的上联口是100M/1000M以太网。整个系统提供丰富的二层和三层协议和功能,因此整个产品的开发周期和开发时间比较长。为了更好的满足客户的需求,同时也方便项目过程的管理和监控,整个产品采用的开发模型是增量模型,将整个产品分成4个版本来进行开发,这里分别表示为项目A、项目B、项目C和项目D。

  在项目A交付给客户使用之后,发现客户反馈的问题比较多(以产品交付3个月之内客户反馈的缺陷数目计算),并且相对比较严重,导致客户对该产品没有信心,并且影响公司的整体形象。在项目分析会议上,项目经理针对测试团队提出了“为什么在测试过程中没有发现这些问题”这样尖锐的问题,要求测试团队仔细分析其中存在的问题,并将分析的结果应用在项目C上,希望能够对目前糟糕的情况有所改变。

  尽管产品质量的提高并不仅仅依赖于测试团队的测试质量,它需要项目所有相关人员的积极参与。但是项目A的产品发布之后,在用户那里发现很多的缺陷和问题,至少说明测试团队在测试过程中遗漏了不少缺陷,其缺陷发现率并不高。

  测试团队通过分析项目A中已有的测试用例,以及从用户使用现场反馈的缺陷,发现原来设计的测试用例大部分都集中功能测试方面,而用户反馈的缺陷则大部分属于非功能的缺陷。

  为了在后续项目中提高测试在功能特性和非功能特性的覆盖率,测试团队基于ISO 9126内部和外部质量特性,以及IPDSLAM产品本身的特点,详细的定义了在测试设计和执行过程中必须覆盖的测试类型(通过测试类型的定义来反映不同的质量特性的要求)。通过在测试过程中引入测试类型的概念,尽量减少测试人员在测试设计和执行过程中遗漏某些质量特性,以保证整个测试的测试覆盖率和测试质量的提升。下图是IPDSLAM项目中定义的测试类型:

图1 IPDSLAM测试类型

  定义了IPDSLAM的测试类型之后,测试团队将测试类型应用于IPDSLAM的C项目。在C项目的整个测试任务结束之后,对测试类型应用之后的结果进行了详细的分析(通过和A项目的测试数据进行比较),得到了表1的比对数据:

表 1 测试用例在测试类型上的分布

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

关注51Testing

联系我们

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

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

沪ICP备05003035号

沪公网安备 31010102002173号