软件测试原则有哪些「软件测试的基础理论和原则」

互联网 2023-04-23 12:40:30

今天给大家普及一下软件测试原则有哪些「软件测试的基础理论和原则」相关知识,最近很多在问软件测试原则有哪些「软件测试的基础理论和原则」,希望能帮助到您。

概括出以下8条软件测试基本原则。

1.所有的测试要追溯到用户的需求

在所有测试活动的过程中,测试人员都应该从客户的需求出发,想用户所想。正如我们所知,软件测试的目标就是验证产品开发的一致性和确认产品是否满足客户的需求,与之对应的任何产品质量特性都应追溯到用户需求。简单说就是一切从用户角度出发。

2.测试应尽早地介入

根据统计表明,在软件开发生命周期早期引入的错误占软件过程中出现的所有错误(包括最终的缺陷)数量的50%~60%。因此,软件测试人员要尽早地且不断地进行软件测试,以提高软件质量,降低软件开发成本。

3.测试无法穷举

在整个测试过程中,测试人员无法考虑到所有可能输入值和它们的组合以及结合所有不同的测试前置条件;所以穷举测试是不可能的,当测试满足一定的出口准则时,测试就应当终止。因此,想要控制测试工作量,在测试成本、收益和风险之间求得平衡;需要通过风险分析、优先级分析以及软件质量模型和不同测试的方法来确定测试关注点,从而代替穷举测试,提高测试覆盖率。

4.避免开发者自测

测试工作需要严谨的作风、冷静的分析。心理学告诉我们,每个人都具有一种不愿否定自己工作的心理,这种状态会导致测试自己程序的障碍。同时,程序员对需求规格说明的错误理解而引入的错误是很难被发现。因此,程序员应避免测试自己的程序,为达到最佳的效果,应由独立的测试小组、第三方来完成测试。

5.群集现象

Pareto Principle帕累托法则(二八定律)表明:80%的错误集中在20%的程序模块中。也就是说,测试所发现的大部分缺陷和软件运行失效是由少数程序模块引起的。因此,测试过程中要充分注意群集现象,对发现错误较多的程序段或者软件模块,应进行反复地深入的测试。

6.杀虫剂悖论

杀虫剂用得多了,害虫就有免疫力,杀虫剂就发挥不了效力。同样在测试中,如果测试用例被反复使用时,发现缺陷的能力就会越来越差。为了避免克服这种现象出现,测试用例需要进行定期评审和修改,不断增加新的不同的测试用例来测试软件或系统的不同部分,从而发现更多潜在的缺陷。作为专业的测试人员来说,要具有探索性思维和逆向思维。同理,测试方法也需要不断地变化。

7.不存在缺陷的谬论

通过测试可以减少软件中存在未被发现缺陷的可能性,但即使测试没有发现任何缺陷,也不能证明软件或系统是完全正确的。也就是说,测试只能证明软件存在缺陷,不能证明软件不存在缺陷。比如,不能满足用户期望的或用户不满意,也是一种缺陷。

8.测试活动依赖于测试背景

针对不同的测试背景,进行的测试活动也不同,测试策略和测试方法在选取上也有所不同。比如,银行产品和电商平台。在银行产品中要将安全放到首位;在电商平台中要把兼容性、性能放到首位。在实际测试过程中,测试人员应该在测试原则指导下进行测试活动。

软件测试原则有助于测试人员进行高质量的测试,尽早尽可能多地发现缺陷,并负责跟踪和分析软件中的问题,对存在的问题和不足提出质疑和改进,从而持续改进测试过程。