软件测试的7项基本原则

在软件测试领域中有业界公认的7项基本原则。了解这7项原则,可以让我们正确的认识测试,更好的进行测试。

这7项原则分别是:

  1. 软件测试能够发现软件存在缺陷,但不能证明软件没有缺陷

软件测试能够发现软件潜在的缺陷,好的测试可以使软件中遗留的缺陷非常少。这使得软件测试的作用被夸大。甚至有些人认为只要通过了软件测试的软件,就不再存在任何缺陷,就可以放心的使用。这种把软件测试神话了的现象是违背这一原则的。实际上即使软件测试发现任何缺陷,也不能证明软件当中就没有缺陷,软件就是完全正确的。

  1. 穷尽软件测试是不可行的

理论上我们希望在软件投入使用之前能够通过软件测试,把各种输入和前提条件的组合都测试一遍。但在实际上这种穷尽的软件测试是不可能实现的。一方面这种穷尽的软件测试所消耗的工作量巨大,软件的收益和成本不成比例;另一方面软件中存在。一些无关紧要的缺陷,并不会影响软件的使用。所以软件通常会遵循一个 good enough原则——通过衡量测试的投入产出比,测试既不能太少,也不能太过。

  1. 软件测试应尽早介入

软件测试应当尽早地介入软件开发过程,这样就可以尽早的地发现软件缺陷,而越早发现软件缺陷,缺陷的修复成本就会越小。所以让测试人员参加需求开发过程,确认每条需求的正确性、可测试性等,可以有效地节省开发成本。

  1. 缺陷的集群性

软件测试也是符合28原则的,即80%的缺陷只存在20%的模块当中。在测试的实践当中也会发现,如果你在某个模块发现了缺陷,那么在这模块当中可能就会存在不止一个缺陷。这就是缺陷的集群性。

  1. 杀虫剂悖论

测试中的杀虫剂现象,有两种情况:一种情况是同一个软件由同一个人测试,那么他在几天后就会发生杀虫剂现象;另外一种情况是同样的测试用例对同一个软件重复测试,也会发生杀虫剂现象。对于后者需要对通过对测试用例的定期评审和完善来克服,对于前者则需要采用轮流测试的方式来克服。

  1. 软件测试活动依赖于软件测试背景

不同领域的软件测试都有它自己的特殊的测试策略。比如,军用软件会重视可靠性和安全性的测试,信息化系统软件则会强调压力测试等性能的测试。

  1. 无法使用的软件不需要测试

如果一个软件根本无法正常使用,或者他最主要的软件功能都不能正常使用这样的软件是完全没有必要进行测试的。

这正是:

七项原则数一数,好像大侠掌七武

正确理解和认识,测试走上阳光路

参考书目:软件测试技术实战:设计、工具及管理,作者:顾翔,出版社:人民邮电出版社

作者简介:王小双,长期从事GJB5000推广、实施、评价、改进的工作,创建《软件工程之思》微信公众号,一直在《软件工程之思》分享GJB5000、CMMI、软件工程的知识和感悟。现致力于GJB5000咨询以及软件过程改进、软件工程能力提升的研究工作。

软件测试的7项基本原则》来自互联网,仅为收藏学习,如侵权请联系删除。本文URL:http://www.hashtobe.com/971.html