四步测试策略制定法-测试架构师修炼之道(10)

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

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

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

  4. 进行“测试分层”
  到目前为止,我们已经能够综合考虑研发流程、风险,并基于产品质量目标来制定测试策略。通过上面的分析,我们可以得到很多测试活动,会发现有那么多要做的事情,现在的问题是我们该以什么策略去安排这些测试活动?
  这个问题的最佳答案就是进行“测试分层”。
  测试分层是指将有共同测试目的的测试活动放在一起形成一个组,然后一组一组地逐一进行测试。
  分好层后,我们只要确定先测哪层,再测哪层,就能把各种测试活动安排下去了。对软件测试架构师来说,这比一个个去考虑先做什么测试活动,再做什么,效率要高很多,也能够让测试的整体思路变得更为清晰。
  对测试团队来说,分层测试后,每层的测试内容、测试重点和测试方法都会有所不同,可以减少测试团队总是感到在重复执行相同内容的困惑,增加新鲜感。
  但是,这些都不是测试分层最大的价值。测试分层最大的价值在于:通过测试分层,我们能够将一个大的测试目标,分到不同层次中分阶段去完成;合理的测试分层,能够让测试目标SMART化。能够让我们将目标(产品质量目标) —行为(测试活动)—评估(质量评估)的闭环,真正在产品测试中落地。
  我们还将在6.8节中为大家继续讨论分层测试技术,在第7章中为大家介绍分层测试策略。
  5. “四步测试策略制定法”中的测试技术
  通过前面的介绍,我们了解到在使用四步测试策略制定法来制定测试策略时,会使用到一些方式或者模型。总的来说,如图6-7所示。
  本章接下来的部分,将先为大家详细介绍这些模型和技术,为我们后面进行测试策略实战做好准备。
  6.3 产品质量评估模型
  产品质量评估模型将用在测试目标的确定和评估上,它是整个测试策略的基础。在介绍这个重要模型之前,我们想先花一点笔墨来讨论一下一个优秀的产品质量评估模型应该具备哪些特征。
  6.3.1 优秀的产品质量评估模型的特征
  单纯从质量评估的角度来说,下面的场景也许大家并不会陌生:
  产品质量评估中的几个场景
  场景1:项目计划的时间到了,就发布产品。
  场景2: 将缺陷修复率作为产品的质量目标。产品必须达到一定的缺陷修复率,才能发布。
  场景3:我们为产品建立了很多指标来作为质量目标,如缺陷修复率、测试代码覆盖率等。产品必须达到制订的质量目标,才能发布。
  场景1说明测试团队当前还没有产品质量评估的具体办法,于是只有将“时间”作为底线。改善方法之一就是引入质量评估的方法。
  场景2和场景1相比,已经有了判断标准,可以说是有质的改变,但场景2也有“软肋”,就是评价的标准太过于单一。而对一个产品来说,要想对它的质量进行客观准确的评价,并不像我们在超市中买水果,要判断这个水果好不好,咬一口尝一尝这么简单,产品质量本身涉及的属性就有六大类,和开发过程及测试过程也息息相关,单纯通过一个指标很难判断准确。
  场景3看起来很好,但是在实际操作的时候,我们往往会发现,我们费时费力地对这些指标进行了统计、分析和跟踪,最后也都达到了,但是我们对产品质量的好坏依然感到心里没底——这实在太让人沮丧了。
  我分析出现场景3中的问题,主要原因有3点:
  第一,这些指标覆盖的维度可能不全,我们可能遗漏掉了一些重要的考察项。
  第二,“指标”本身比较容易被“聪明人”绕过去,变得形同虚设。
  第三,整个质量评价体系中全是指标,缺少定性的分析。
  例如,我们以测试的代码覆盖度要达到90%作为一项质量目标。为了达到这个目标,我们可能会选择一些容易进行测试“覆盖”,但实际上风险并不大的地方进行测试。虽然最终能达到90%的测试覆盖目标,但是没有被测试到的10%那部分情况如何,是否真的不需要测试,可能会有哪些风险,对我们来说都是“未知”的。未知正是心里没底的源头。
  如果我们将这个问题从评估引申到目标的层面,如果我们在制订目标的时候,考虑的不仅仅是指标,而能包含一些如“对重要特性,要达到100%的测试覆盖”“测试方法要包含语句覆盖、判断覆盖、路径覆盖”等的描述,以此作为要达到的质量目标,不仅能解决上述的问题,还能更好地帮助我们确定要进行的测试活动。
  综上,一个优秀的产品质量评估模型,应该具备如下特质:
  · 多维度:能够覆盖质量评估的各个纬度,能够帮助评估者全面分析和考虑。
  · 定量+定性:指标和分析相结合,能够有效避免在只有指标的情况下,被“绕”过去,变得形同虚设。
  · 过程+结果:不仅评估测试的结果,还对过程进行分析和评估。
  6.3.2 软件产品质量评估模型
  我们将从3个方面来建立软件产品质量评估模型,对产品质量进行分析、确定和评估(图6-8):
  测试覆盖度评估:对测试范围及测试的深度与广度进行分析和评估。
  测试过程评估:对测试过程和测试的投入情况来进行分析与评估。
  缺陷分析:对测试结果进行分析和评估。
  1.测试覆盖度评估
  测试覆盖度评估包括需求覆盖度评估和路径覆盖度分析两个方面,从“需求”和“实现”两个纬度来对测试的全面性进行分析和评估,属于定量指标。
  2.测试过程评估
  测试过程评估包括测试用例分析、测试方法分析和测试投入分析3个方面,既包含定量指标,又包含定性分析。
  3.缺陷分析
  缺陷分析包括缺陷密度分析、缺陷修复情况分析、缺陷趋势分析、缺陷年龄分析和缺陷触发因素分析5个方面,从这5个方面来对测试结果进行分析和评估,也是既包含定量指标,又包含定性分析。
  接下来我们将逐一为大家进行详细介绍。
  6.4 测试覆盖度评估
  测试覆盖度评估是对产品测试的全面性的分析和评估,是产品测试能够对产品质量进行评估的基础。在评估时,又可以从需求覆盖度和路径覆盖度两个方面进行分析评估,其......
本文选自《测试架构师修炼之道:从测试工程师到测试架构师》第六章,本站经机械工业出版社和作者的授权。
版权声明:51Testing软件测试网获机械工业出版社和作者授权连载本书部分章节。任何个人或单位未获得明确的书面许可,不得对本文内容复制、转载或进行镜像,否则将追究法律责任。
22/2<12
《2023软件测试行业现状调查报告》独家发布~

关注51Testing

联系我们

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

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

沪ICP备05003035号

沪公网安备 31010102002173号