软件测试的原则是指帮助测试团队有效地利用他们的时间和精力来发现测试项目的隐藏bug的指导方针。从实际的实践和研究中,研究了以下 7 条软件测试的基本原则,以便测试人员在软件测试领域广泛应用。
1.测试表明项目目前存在的缺陷
这个原则可以用另一种方式来描述: 测试是关于缺陷的存在,而不是缺陷的不存在。软件测试只能找出应用程序或软件中存在的缺陷。测试总是有助于消除软件中未被发现的缺陷数量,但是,即使在测试过程中没有发现任何错误,也不意味着正确性。尽管对产品或应用程序进行了彻底的测试,但没有人能确保产品 100% 无缺陷。
2.不可能进行详尽的测试
测试数据、输入和测试场景的所有组合是不可能的,因为它需要大量的时间。相反,测试团队只能专注于一些重要的标准,如设置测试策略的风险和优先级。项目时间表永远不允许测试团队在项目中测试大量有效的组合。这就是为什么在测试项目中,访问和管理风险被认为是必不可少的活动之一。
3 、早期测试
必须尽快进行测试活动,为软件开发的下一阶段做好准备。只要生成产品需求或文档,测试人员甚至可以开始测试。显然,从一开始就解决问题总是更容易、更便宜,而不是如果发现错误太晚就改变整个系统。因此,通过早期测试,测试人员可以检测到错误,并帮助开发团队以更少的成本和精力解决问题。
4.缺陷聚类
缺陷聚类指的是在几个模块中发现了大部分缺陷。这一原则要求测试团队利用自己的知识和经验,确定要测试的潜在模块。这一预测有助于节省时间和精力,因为团队只需要关注那些 “敏感” 领域。然而,这种方法也有缺点: 一旦测试人员只专注于所有团队的一小块区域,他们可能会错过其他区域的错误。
5.杀虫剂悖论
杀虫剂悖论是指测试人员在项目中进行的重复测试。这些测试只适用于一些有限的模块,而不是整个系统。这种测试可能会导致在模块之外没有发现新错误的问题。因此,为了涵盖项目的各个部分,它要求测试团队经常审查和更新测试用例。
6.测试基本上依赖上下文
各种产品或项目包含不同的元素、特征和要求。因此,测试人员不能对不同的项目应用相同的测试方法。例如,银行行业的应用程序应该比娱乐软件需要更多的测试。
7.无错误谬论
软件产品不仅要在技术方面进行测试,还要根据用户的期望和需求进行测试。虽然测试没有在软件中显示任何错误,但这并不意味着产品已经准备好发布,因为必须确认测试是按照正确的要求进行的。
上述原则是由 Rex Black 、 Erick Van Veenendaal 和 Dorothy Graham 的研究 “软件测试基础” (ISTQB 认证) 总结的。这些原则可以作为大多数测试项目的核心指南。然而,如前所述,每个产品或项目都包含非常不同的因素和需求,需要各种测试方法。测试人员应该利用他们的经验和知识来决定和平衡这些方法。
1.测试表明项目目前存在的缺陷
这个原则可以用另一种方式来描述: 测试是关于缺陷的存在,而不是缺陷的不存在。软件测试只能找出应用程序或软件中存在的缺陷。测试总是有助于消除软件中未被发现的缺陷数量,但是,即使在测试过程中没有发现任何错误,也不意味着正确性。尽管对产品或应用程序进行了彻底的测试,但没有人能确保产品 100% 无缺陷。
2.不可能进行详尽的测试
测试数据、输入和测试场景的所有组合是不可能的,因为它需要大量的时间。相反,测试团队只能专注于一些重要的标准,如设置测试策略的风险和优先级。项目时间表永远不允许测试团队在项目中测试大量有效的组合。这就是为什么在测试项目中,访问和管理风险被认为是必不可少的活动之一。
3 、早期测试
必须尽快进行测试活动,为软件开发的下一阶段做好准备。只要生成产品需求或文档,测试人员甚至可以开始测试。显然,从一开始就解决问题总是更容易、更便宜,而不是如果发现错误太晚就改变整个系统。因此,通过早期测试,测试人员可以检测到错误,并帮助开发团队以更少的成本和精力解决问题。
4.缺陷聚类
缺陷聚类指的是在几个模块中发现了大部分缺陷。这一原则要求测试团队利用自己的知识和经验,确定要测试的潜在模块。这一预测有助于节省时间和精力,因为团队只需要关注那些 “敏感” 领域。然而,这种方法也有缺点: 一旦测试人员只专注于所有团队的一小块区域,他们可能会错过其他区域的错误。
5.杀虫剂悖论
杀虫剂悖论是指测试人员在项目中进行的重复测试。这些测试只适用于一些有限的模块,而不是整个系统。这种测试可能会导致在模块之外没有发现新错误的问题。因此,为了涵盖项目的各个部分,它要求测试团队经常审查和更新测试用例。
6.测试基本上依赖上下文
各种产品或项目包含不同的元素、特征和要求。因此,测试人员不能对不同的项目应用相同的测试方法。例如,银行行业的应用程序应该比娱乐软件需要更多的测试。
7.无错误谬论
软件产品不仅要在技术方面进行测试,还要根据用户的期望和需求进行测试。虽然测试没有在软件中显示任何错误,但这并不意味着产品已经准备好发布,因为必须确认测试是按照正确的要求进行的。
上述原则是由 Rex Black 、 Erick Van Veenendaal 和 Dorothy Graham 的研究 “软件测试基础” (ISTQB 认证) 总结的。这些原则可以作为大多数测试项目的核心指南。然而,如前所述,每个产品或项目都包含非常不同的因素和需求,需要各种测试方法。测试人员应该利用他们的经验和知识来决定和平衡这些方法。