软件测试的原则
1. 测试表明存在缺陷
2. 不可能进行详尽的测试
3. 早期测定
4. 缺陷聚类
缺陷聚类定义了在整个测试过程中,我们可以检测出与少量模块相关的缺陷数量。我们有各种各样的原因,比如模块可能比较复杂;编码部分可能很复杂,等等。
这些类型的软件或应用程序将遵循帕累托原则,即我们可以确定大约80%的复杂性存在于20%的模块中。在此基础上,我们可以发现不确定的模块,但是如果相同的测试是定期进行的,这种方法存在一定的困难,因此相同的测试不能识别出新的缺陷。
5. 农药悖论
这个原则定义了如果我们在特定的时间内一次又一次地执行同一组测试用例,那么这些类型的测试将无法在软件或应用程序中发现新的bug。为了克服这些农药悖论,经常回顾所有的测试案例是非常有意义的。并且新的和不同的测试对于应用程序或软件的多个部分的实现是必要的,这有助于我们发现更多的bug。
6. 测试是上下文相关的
测试是一个依赖上下文的原则,说明我们有多个领域,如电子商务网站,商业网站,等等在市场上都是可用的。有一个明确的方法来测试商业站点和电子商务网站,因为每个应用程序都有自己的需求、特性和功能。为了检查这种类型的应用程序,我们将使用各种测试、不同的技术、方法和多种方法。因此,测试取决于应用程序的上下文。
7. 无错误谬误
一旦应用程序完成测试,并且在发布之前没有发现bug,那么我们可以说应用程序是99%没有bug的。但是,当应用程序在不正确的需求旁边进行测试时,识别缺陷并在给定的时间段内修复这些缺陷并没有帮助,因为测试是在错误的规范上进行的,这不适用于客户的需求。错误谬误的存在意味着,如果应用程序不实用,不能满足客户的要求和需求,那么识别和修复错误将无济于事。