测试投入分析-测试架构师修炼之道(11)

发表于:2016-10-10 08:19

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

 作者:刘琛梅    来源:51Testing软件测试网原创

  6.5.3 测试投入分析
  测试投入分析也是很重要的一项测试过程评估项目,在这里我们主要从测试人员安排和测试投入工作量来进行分析,确认重要的、高风险的特性能够保证测试投入,符合测试策略。
  在实际分析时,可以使用类似表6-8的形式,来对测试的投入情况进行分析。
  如果发现测试投入和测试策略不符,则需要考虑调整测试投入,或者调整测试策略。进行风险识别和风险控制,及时调整测试策略。
  6.6 缺陷分析
  缺陷是指在产品测试中发现产品不符合需求和设计的地方。但是如果我们仅仅把缺陷当成产品问题的记录,而不去挖掘缺陷数据背后隐含的和产品质量有关的信息,就显得太可惜了。
  本节将为大家介绍缺陷分析技术和这些缺陷分析技术在产品质量评估方面的作用,并讨论如何将这些分析技术组合起来,能够对产品质量进行较为全面评估。
  6.6.1 缺陷密度
  缺陷密度是指每千行代码发现的缺陷数。我们在确定了缺陷密度后,还可以顺带得到缺陷总数。对一个产品研发项目而言,确定、分析缺陷密度的重要意义在于:
  · 通过缺陷密度,我们可以预测产品中可能会有多少缺陷。
  · 通过缺陷密度,可以帮助我们评估当前已经发现的缺陷总数是否足够多。如果“缺陷密度”和预期偏差较大,原则上不应该退出测试,发布产品。
  我们能够在产品测试之前,较为准确地预测产品的缺陷密度并将此作为一个测试目标,主要基于如下假设:
  在系统复杂度、研发能力一定的情况下,由各个环节引入系统中的缺陷总数也会是基本一致的。
  例如产品A,截止到产品发布时一共发现了1000个缺陷。一个和产品A复杂度类似的产品B,由和产品A能力相似的研发团队开发,测试类似的周期,也应该发现1000个左右的缺陷。
  如果产品B和产品A在复杂度、研发能力上有较为明显的差别,我们也可以通过乘以一些系数来对产品B的缺陷密度进行折算。
  当然,如果产品团队能够有专人度量这些数据,建立基线,让缺陷密度的估计变得更为准确,则更有实际意义。
  不过在实际项目中,真实的缺陷密度不会和估计的缺陷密度恰好相等,往往会有一定的偏差。对此,我的建议是,我们在确定缺陷密度的同时,也可以确定一个允许的偏差范围(比如3%)。只要实际的缺陷密度在这个允许的偏差范围内,我们都认为是正常的(如图6-11所示的“实际的缺陷密度3”);一旦缺陷密度落到了偏差范围外,就需要我们进行分析了(如图6-11所示的“实际的缺陷密度1”和“实际的缺陷密度2”)。
  如果我们发现实际的缺陷密度值偏高(如图6-11的“实际的缺陷密度2”),通常最可能的原因为:产品整体质量不高。此时,软件测试架构师可以:
  · 提高缺陷密度的预估值。
  · 对缺陷较多的地方增加测试投入,如增加测试人力、增加测试时间、使用更多的测试方法等。
  · 考虑和研发经理、开发人员、系统工程师等一起进行一些质量改进和质量保证工作,如加强评审等。
  如果我们发现实际的缺陷密度值偏低(如图6-11的“实际的缺陷密度1”),通常最可能的原因为:
  · 产品整体质量较好。
  · 测试能力不足,未能充分暴露缺陷。
  · 测试投入不足,未能充分暴露缺陷。
  如果是第一种情况,实际的缺陷密度值较低,我们可以认为是正常情况。如果是后面两种情况,软件测试架构师可以采取增加测试投入、在测试团队中引入更有效的测试方法等措施来解决相关的问题。
  6.6.2 缺陷修复率
  缺陷修复率是指产品“已经修复解决的缺陷总数”和“已经发现缺陷总数”的比值。例如,产品已经发现的缺陷数目为1000个,已经修复解决的缺陷数目为900个,当前的缺陷修复率就是90%。
  缺陷修复率能够帮助我们确定当前产品发现的缺陷是否被有效修复,为当前的产品质量是否达到测试质量目标提供最直接的判断依据。这需要我们:
  在每个测试分层(如集成测试、系统测试)开始的时候确定缺陷修复率目标。
  在每个测试分层结束时判断是否达到目标,是否可以进入下一阶段的测试。
  如果最终的缺陷修复率不能达到预期,原则上不应该退出测试,发布产品。
  有时候产品的缺陷实在太多,为了保证重要缺陷能够被优先修复,我们可以对缺陷按照严重程度进行划分,然后按照不同的严重程度来确定缺陷修复率。
  1. 缺陷的严重程度
  缺陷的严重程度是基于缺陷如果不修改会对用户造成的影响来划分的。表6-9是缺陷的严重程度的定义和示例。
  2. 考虑了缺陷的严重程度的缺陷修复率
  考虑了缺陷的严重程度后,缺陷修复率变成了在某些特定的严重程度下,缺陷的修复率,例如:
  · 一般以上缺陷的修复率:缺陷的严重程度为“一般”“严重”和“致命”的修复率。
  · 严重以上缺陷的修复率:缺陷的严重程度为“严重”和“致命”的修复率。
  考虑了缺陷的严重程度后,有助于开发人员和测试人员把精力聚焦到对用户影响更为严重的缺陷的解决和验证上。例如,某产品发现了1000个缺陷,其中“致命”缺陷50个,“严重”缺陷200个,“一般”缺陷550个,“提示”缺陷200个。解决了200个“严重”缺陷和解决了200个“提示”缺陷,“缺陷修复率”都是20%,但显而易见的是,前者对用户、对产品质量都更有意义。
本文选自《测试架构师修炼之道:从测试工程师到测试架构师》第六章,本站经机械工业出版社和作者的授权。
版权声明:51Testing软件测试网获机械工业出版社和作者授权连载本书部分章节。任何个人或单位未获得明确的书面许可,不得对本文内容复制、转载或进行镜像,否则将追究法律责任。
31/3123>
《2023软件测试行业现状调查报告》独家发布~

关注51Testing

联系我们

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

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

沪ICP备05003035号

沪公网安备 31010102002173号