对测试要有一个清晰的宏观认识。测试的终极目的不是为了发现错误,而是为程序、为代码增加它的价值。通过破坏它、撕碎它,来使程序成长,变得健壮。一如人的成长。
阅读了十条软件测试原则,其中3点使我深思。
软件测试的原则1:测试用例中一个必须部分是对预期输出或结果进行定义。即对于输入和输出必须明确化。这是为了避免在测试中出现主观判断猜想的最直接的途径,也是为了保证项目的需求不会被随意改变。
软件测试的原则6:检查程序是否“未做其应该做的”仅是测试的一半,测试的另一半是检查程序是否“做了不应该做的”。这个错误我曾经在做软件开发时犯过,因为设计思路的改变,我直接在原有代码上进行功能的添加和修改,而没有从头审查、测试代码,导致某个文件冗余代码达到将近400行。项目后期,我将这部分交付给另一个同学,同学在调试这个文件时,这部分冗余代码造成了很大的干扰性。此为教训!
软件测试的原则9:程序某部分存在更多错误的可能性,与该部分已发现错误的数量成正比。在项目开发时也有过类似经验和教训。所以,当解决一个BUG时,不要沾沾自喜,很可能后面还有一堆隐患等着你去解决,当然,当BUG很多时,这时候就要怀疑这段代码的设计是否就存在问题。
有问题不可怕,解决问题最关键。
而解决问题的最好时机,就是当出现问题的苗头时,立马把它扼杀在摇篮里。否则,很可能后患无穷。这也是软件测试的原则。