软件测试是为了发现错误而执行程序的过程,这就说明目的是为了发现错误,动作是执行程序。

在进行软件测试的过程中,要遵循很多的原则,以下是几个重要的测试原则:

1)      测试用例中一个必需部分是对预期输出或结果进行定义。

         对于软件测试,必须是有明确的定义输入数据和条件,同时对输出结果有准确的判断。这样才能辨别是否是有效的测试,当前的结果是否是正确的。

2)      程序员应当避免测试自己编写的程序。

         人都会有固定思维,一方面是可能对软件需求规格书的理解偏差,导致编写的程序也有偏差,所以自己没有发现。另一方面是人的倾向是程序是正确的,会尽量去避免发现错误。

3)      编写软件的组织不应当测试自己编写的软件。

         原理跟上一条相似。会潜意识里避免发现错误,且难以发现自身问题。

4)      应当彻底检查每个测试的执行结果。

5)      测试用例的编写不仅应当根据有效或预料到的输入情况,而且也应当根据无效和未预料到的输入情况。

         通常会忽略无效和未预料到的输入情况,而实际上很多错误都发生于此。

6)      检查程序是否“未做其应该做的”仅是测试的一半,测试的另一半是检查程序是否“做了其不应该做的”。

         这也是测试的两面,没有做应该做的是错误,做了不该做的也同样是错误。

7)      应避免测试用例用后即弃,除非软件本身就是一个一次性的软件。

         编写测试用例本身是一个复杂且耗时的事情,要考虑之后的迭代,产品的更新换代,能够节省不少时间,其次能及时对测试用例进行优化和升级。

8)      计划测试工作时不应默许假定不会发生错误。

         任何错误都可能会发生,还有很多未发现的隐藏错误。必须充满好奇心和质疑的态度去探究。

9)      程序某部分存在更多错误的可能性,与该部分已发现错误的数量成正比。

         发生错误越多的地方意味着程序的这部分越不稳定,隐藏的问题也越多。所以要重点测试发生了更多错误的地方,挖出隐藏问题。

10)      软件测试是一项极富创造性、极具智力挑战性的工作。

10-09 10:45