测试之前—对测试前质量的考察

发表于:2014-7-25 09:00

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

 作者:殷亮    来源:51Testing软件测试网原创

  引言:博观而约取,厚积而薄发
  甚至在最先进的国家,也存在许多缺陷与不完善之处,存在许多妨碍社会资源以更有效的方式进行配置的障碍。对这些障碍的研究构成了我们的现实问题。
  --阿瑟o赛斯尔o庇古(Arthur Cecil Pigou)①
  测试之前
  二十七年前,软件管理大师杰拉尔德o温伯格(Gerald M. Weinberg)在其著作《Perfect Software》中曾调侃那些不懂测试的开发者:"我们在开始测试之前没有任何问题。我们完全符合进度计划。是测试弄糟了所有事情。" ②
  现在,大多数从业者都已经清楚了问题所在:弄糟了所有事情的不是测试,而恰恰是据称"没有任何问题"的"测试之前"。是上游工作的低劣质量,导致了最终测试周期的无限拉长与测试资源的超额投入。正如传统测试文献所经常强调的:一个缺陷在不同阶段修复的成本差异--即随着开发生命周期的向前推进,修复前期引入的一个缺陷的单位成本将呈指数增长。这一观点的意义在于它很好地揭示了项目失控的一个重要方面:即在软件前期质量还很糟糕的情况下,人们过早地由"测试之前"过渡到了正式的测试阶段。这样,当那些原本可以在前期被发现与修复的缺陷跟随着软件包一齐流入到测试环节时,必将导致更多轮次的测试与更高昂的修复成本:人们不仅投入了额外的测试资源,同时开发资源的投入却未减反增(因为对缺陷的修复本身就是另一个引入错误以及新缺陷的机会)。从社会学的角度来看,这是一种低效的社会安排,是"非帕累托最优"(Non-Pareto optimal)的:一方的福利降低了,但另一方的处境却并未因此而得到任何改善。
  因此,我们如何正视"测试之前"的美好假象,以及如何有效地防止测试资源被滥用,已经不只是一个出于对测试团队的尊重与保护的简单问题,而是一个影响到项目整体资源投入的管理问题--因为测试资源的滥用必将导致开发资源的更多投入,在其它条件不变的情况下,这两类资源投入的增加都唯有通过日程的向后推移来弥补,进而使项目毫无悬念地驶向死亡之旅。但遗憾的是,如今似乎只有极少数的软件组织较好地解决了这一问题,而其它绝大部分的软件组织仍在持续的焦虑与不断的失望中,继续背负着测试资源滥用带来的沉重负担,同时还得一再相信:这一次测试之前是"真的"没任何问题的。
  度量困难
  既然我们相信绝大多数企业已经知道测试之前质量控制的重要性,而且也给予了测试之前的质量足够的重视,那么我们接下来就需要解释:为什么人们愿意控制测试之前的质量,但测试之前的质量却总得不到控制?
  传统测试文献对缺陷修复成本的论述,与质量管理大师菲利浦o克劳士比(Philip B. Crosby)的质量思想是一致的:均认为缺陷越早得到修复投入成本越低。克劳斯比强调:"最便宜的做事方式就是一次把事情做好",因而得出"质量是免费的"这一著名结论③。然而现实情况是:在软件开发领域里,几乎从没有过"一次把事情做好"--尽管计算机科学先驱哈兰.米尔斯(Harlan D. Mills)和其他学者认为,他们可以完美地构建系统而不需要测试,但迄今为止,仍没人能在实际的软件项目中令人信服地证明这一点。因为人在感官能力与脑力上的局限性,以及只有着极为有限的存储处理能力和同样有限的接收反馈通道,再加上一些不可忽略的心理因素与环境压力,这使得在绝大多数情况下,要求他人一次将事情做好无疑是不太现实的。
  如此一来,我们只能退而求次:不要求一次做好,但质量必须"足够好",为难以避免的错误留下人性化的空间。但这样并没有让我们的问题难度随之降低,因为这时我们还必须给测试之前定义一个相应的质量标准:它不是绝对的"零缺陷",但它必须是"足够好"的。定义这个标准的困难在于,首先,我们并不知道该让这个标准落在"零缺陷"之后的什么地方才算合适--不同的软件项目规模、不同的复杂性,定义一个固定允许的缺陷数显然是不公平、也是不合逻辑的;其次,质量也并非是仅凭缺陷数便能客观度量的--不同的严重级别、不同的错误类型,在增加了度量的复杂性的同时,也为人们针对缺陷的争论与讨价还价埋下伏笔;最后,由于测试原本就是对软件质量的度量,所以除非我们最后执行完测试得到结论,否则这一度量又必然是不完全的。以上种种原则,使得我们想要为测试之前的软件质量进行严谨而完整的度量变得极为困难:因为它不仅复杂,而且还存在着极为高昂的执行成本。
     ......
 查看全文请点击下载:http://www.51testing.com/html/42/n-863942.html

   版权声明:51Testing软件测试网及相关内容提供者拥有51testing.com内容的全部版权,未经明确的书面许可,任何人或单位不得对本网站内容复制、转载或进行镜像,否则将追究法律责任。

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

关注51Testing

联系我们

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

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

沪ICP备05003035号

沪公网安备 31010102002173号