软件测试过程中的三种不常见缺陷

发表于:2014-12-31 11:14

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

 作者:Prashant PC/大头    来源:测试窝

  作为一个软件测试爱好者,在面对软件存在问题的行为的过程中,我进一步了解了缺陷这一概念。最初,我将每一个瑕疵都报告为一个bug。但经过多年经验,在测试人员解说了神秘的bug后,我开始逐渐了解了缺陷。
  这区分缺陷和bug是件艰难的事情,但在这两者之间划清界限可以帮助我提高我工作的准确度。下面让我们来讨论什么是软件缺陷,以及三种不同类型的缺陷。
  什么是软件缺陷?
  一个缺陷是由的对于软件要求所产生偏差引起的故障。这并不一定意味着在代码中有bug。它可以是软件需求规范(SRS)文档中所指定的,但没有被认可,开发或由程序设计者实现的任何功能。其结果是,导致了该软件的异常行为。
  从用户的角度来看,软件缺陷的典型实例如下:
  用户期望——该软件将允许我使用借记卡进行网上支付
  缺陷——选择借记卡进行支付的选项丢失
  用户期望——该软件将帮助我避免拼写错误
  缺陷——用于检测拼写错误的功能缺失
  “软件测试中的三种不常见缺陷。”
  以此进一步讨论,让我们探讨软件测试过程中观察到的三种不常见缺陷。这些缺陷使得软件不能按照其规范执行。有如下三类:
  #1.潜在缺陷:
  这是一个法律行业的流行术语。潜在缺陷是指在一条款中,卖方意识到一个隐藏的弱点,漏洞或缺陷,但买家无法在进行初步检查之前确定问题。但是,在被暴露在不常见的情况下后,买方就会认识到缺陷。
  类似地,在软件测试中,潜在缺陷是一个在生产过程中伴随着的系统缺陷,并通过了预生产测试和推广使用。这个缺陷在后续缺少相应场景的时候被确定。
  例如:
  一个XYZ应用程序是设计用来打印雇员的工资单。在下拉菜单上有两款打印机:激光的和点阵的。但是,应用程序总是倾向于选择激光打印机。其结果是,每当打印命令被执行,打印输出将从激光打印机出来。
  某一天,当应用程序无法找到激光打印机时,它试图找到针式打印机(DMP)。该应用程序尝试使用DMP打印,但一再给出错误信息。这揭示了一个潜在的缺陷,该应用程序的软件测试从来没有测试过DMP。并且由于只使用激光打印机导致从未经历过这个场景,这个缺陷保持被掩盖。这意味着,在测试中,上述情景是从来没有经历过的。
  如何在测试过程中识别潜在缺陷?
  只有穷举测试可以让缺陷都暴露在系统中,但这是不可能真正实现的。但是,您可以运行一组触发事件,将有助于识别缺陷。你所能做的就是尝试和测试软件的旧功能,而不是新的功能。
  #2.掩蔽缺陷:
  掩蔽缺陷指的是在软件执行过程中没有导致问题的缺陷。主要是因为另一个缺陷导致的问题使得那部分缺陷没有被执行到。
  例如:
  在第一个实例中由于应用程序未对DMP进行测试,检测到了两个问题。
  DMP打印机搜索
  DMP打印
  由于应用程序未能搜索到DMP,而是运行到使用激光打印机中去,导致从未检测出DMP的打印错误。其结果是,DMP打印部分仍然被掩蔽,这就是所谓的掩蔽缺陷。
21/212>
精选软件测试好文,快来阅读吧~

关注51Testing

联系我们

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

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

沪ICP备05003035号

沪公网安备 31010102002173号