软件测试是在规定的条件下对程序进行操做,以发现程序错误,衡量软件质量,并对其是否能知足设计要求进行评估的过程。软件测试的基本原则有助于测试人员进行高质量的测试,尽早尽量多的发现缺陷,并负责跟踪和分析软件中的问题,对存在的问题和不足提出质疑和改进,从而持续改进测试过程。安全
软件测试的七大原则工具
原则1: 测试显示缺陷的存在性能
测试能够显示缺陷的存在,但不能证实系统不存在缺陷。测试能够减小软件中存在缺陷的可能性,但即便测试没有发现任何缺陷,也不能证实软件或系统是彻底正确的,或者说是不存在缺陷的。测试
原则2: 穷尽测试是不可能的spa
穷尽测试是不可能的,当知足必定的测试出口准则时测试就应当终止。考虑到全部可能输入值和它们的组合,以及结合全部不一样的测试前置条件,这是一个天文数字,咱们没有可能进行穷尽测试。.net
原则3: 测试的尽早介入设计
根据统计代表,在软件开发生命周期早期引入的错误占软件过程当中出现全部错误(包括最终的缺陷)数量的50%~60%。此外,IBM的一份研究结果代表,缺陷存在放大趋势。如需求阶段的一个错误可能会致使N个设计错误,所以,越是测试后期,为修复缺陷所付出的代价就会越大。所以,软件测试人员要尽早地且不断地进行软件测试,以提升软件质量下降软件开发成本。对象
原则4:缺陷集群性blog
Pareto原则代表“80%的错误集中在20%的程序模块中”。实际经验也证实了这一点,一般状况下,大多数的缺陷只是存在测试对象的极小部分。缺陷并非平均而是集群分布的。所以,若是在一个地方发现了不少缺陷,那么一般在这个模块中能够发现更多的缺陷。所以,测试过程当中要充分注意错误集群现象,对发现错误较多的程序段或者软件模块,应进行反复的深刻的测试。生命周期
原则5: 杀虫剂悖论
论杀虫剂用得多了,害虫就有免疫力,杀虫剂就发挥不了效力。在测试中,一样的测试用例被一遍一遍反复使用时,发现缺陷的能力就会愈来愈差。这种现象的主要缘由在于测试人员没有及时更新测试用例,同时对测试用例及测试对象过于熟悉,造成思惟定势。
为克服这种现象,测试用例须要常常的评审和修改,不断增长新的不一样的测试用例来测试软件或系统的不一样部分,保证测试用例永远是最新的,即包含着最后一次程序代码或说明文档的更新信息。
原则6: 测试活动依赖于测试背景
对于每一个软件系统,好比测试策略测试技术、测试工具、测试阶段以及测试出口准则等等的选择,都是不同的。同时,测试活动必须与应用程序的运行环境和使用中可能存在的风险相关联。所以,没有两个系统能够以彻底相同的方式进行测试。好比,对关注安全的电子商务系统进行测试,与通常的商业软件测试的重点是不同的,它更多关注的是安全测试和性能测试。
原则7: 不存在缺陷的谬论
系统的质量特征不只仅是功能性要求,还包括了不少其它方面的要求好比稳定性、可用性、兼容性等等。假如系统没法使用,或者系统不能完成客户的需求和指望,那么,这个系统的研发是失败。同时在系统中发现和修改缺陷也是没有任何意义的。
转自:七大原则:https://blog.csdn.net/yao150824/article/details/48094337