问题 单项选择题

下列叙述中正确的是

A) 软件测试的主要目的是确定程序中错误的位置
B) 软件调试的主要目的是发现程序中错误的类型
C) 程序经调试后还应进行测试
D) 软件的测试与调试工作最好都由程序编制者来完成

答案

参考答案:C

解析: 软件测试的目标是在精心控制的环境下执行程序,以发现程序中的错误,给出程序可靠性的鉴定。
测试不是为了证明程序是正确的,而是在设想程序有错误的前提下进行的,其目的是设法暴露程序中的错误和缺陷。由于测试的这一特征,一般应当避免由开发者测试自己的程序。测试只能说明程序有错,而不能证明程序无错,希望通过有限次的测试就能发现程序中的所有错误是不可能的,即完全测试是不可能的。因此,选项A与D中的说法都是错误的。
调试也称排错。
①测试的目的是暴露错误,而调试的目的是发现错误的位置,并改正错误。
②经测试发现错误后,可以立即进行调试并改正错误;经过调试后的程序还需进行回归测试,以检查调试的效果,同时也可防止在调试过程中引进新的错误。
因此,选项B中的说法也是错误的,而选项C中的说法是正确的。

单项选择题
问答题