��
��由于原始问题的复杂性,软件本身的复杂性和抽象性,软件开发各个阶段工作的多样性,以及参加开发各种层次人员之间工作的配合关系等因素,使得开发的每个环节都可能产生错误。所以我们不应把软件测试仅仅看作是软件开发的一个独立阶段,而应当把它贯穿到软件开发的各个阶段中。
��测试工作需要严格的作风,客观的态度和冷静的情绪。人们常由于各种原因具有一种不愿否定自己工作的心理,认为揭露自己程序中的问题总不是一件愉快的事。这一心理状态就成为测试自己程序的障碍。另外,程序员对软件规格说明理解错误而引入的错误则更难发现。例如,学生在考试时,对某一题理解出错,他按照这个错误的思路做出了自己的解答。事后做检查时由于思路的限制,无论怎么检查也发现不了自己的错误。
��但这并不是说程序员不能测试自己的程序。而是说由别人来测试可能会更客观,更有效,并更容易取得成功。要注意的是,这点不能与程序的调试(debuging)相混淆。调试由程序员自己来做可能更有效。