——《软件测试的艺术》
-
软件测试是什么?
为了发现找到程序中的错误而执行的过程。暗示了软件测试是一个破坏性过程。成功的测试用例,通过诱发程序发生错误,进而可以在这个方向上促进软件质量的改进。
-
软件测试经济性
黑盒测试(数据驱动或输入/输出驱动测试)->穷举输入法
白盒测试(逻辑驱动或)->穷举路径测试
穷举不可能达到,因此需要设计一定的测试策略。
-
软件测试重要原则:
(1)一个测试用例必须包括两个部分:对程序的输入数据的描述;对程序在上述输入数据下的正确输出结果的精确描述。
(4)保留测试用例,当程序其他部件发生更动后重新执行,这就是我们所谓的"回归测试"。
(9)错误总是倾向于聚集存在。 如果一个程序的某个部分远比其他部分更容易产生错误,为了使测试获得更大的成效,最好对这些容易存在错误的部分进行额外的测试。
1.测试显示缺陷的存在,但不能证明系统不存在缺陷
2.穷尽测试是不可能的,应设定测试终止条件
3.软件测试应尽早进行。
4.缺陷具有集群性
5.测试的杀虫剂悖论(测试用例及方法应定期修改)
6.测试的二八原则(80%的时间和资源重点测试20%的重要模块)
7.测试活动依赖于测试背景