A. 软件测试和调试的区别是什么
我自己是这样记得,跟你分享一下,不要笑啊:
软件测试:发现错误(发现自己生病内了)
软件容调试:诊断并改正错误(去看医生)
->错误定位(医生诊断是胃有病)
->纠正错误(医生说要打针)
->回归测试(医生说还要复诊)
B. 软件测试技术中测试与调试的概念及区别
1,软件测试是找出软件已经存在的错误,而调试是定位错误,修改程序以修正错误.
2,软件测试从一个已知的条件开始,有预知的结局 而调试从未知的条件开始,其结局不可预知
3,软件测试可以计划,可以预先制定测试用例和过程,工作进度可以度量.而调试不能计划,进度不可度量.
4,调试是在测试之后,在方法,思路,策略上都有所不同.
5,测试的对像可以是文档和代码 而调试的对像只能是代码
6.调试是随机性的 由程序员完成 为了程序可运行
测试是有目的性的 由测试人员完成 为了程序可完成指定功能
软件测试是为了发现错误而执行程序的过程。或者说,软件测试是根据软件开发各阶段的规格说明和程序的内部结构而精心设计一批测试用例(即输入数据及其预期的输出结果),并利用这些测试用例去运行程序,以发现程序错误的过程。
软件测试与调试在目的、技术和方法等方面存在很大的区别,主要表现在如下方面:
(1) 测试是为了发现软件中存在的错误;调试是为了证明软件开发的正确性。
(2) 测试以已知条件开始,使用预先定义的程序,且有预知的结果,不可预见的仅是程序是否通过测试;调试一般是以不可知的内部条件开始,除统计性调试外,结果是不可预见的。
(3) 测试是有计划的,需要进行测试设计;调试是不受时间约束的。
(4) 测试经历发现错误、改正错误、重新测试的过程;调试是一个推理的过程。
(5) 测试的执行是有规程的;调试的执行往往要求开发人员进行必要推理以至知觉的"飞跃"。
(6) 测试经常是由独立的测试组在不了解软件设计的条件下完成的;调试必须由了解详细设计的开发人员完成。
(7) 大多数测试的执行和设计可以由工具支持;调式时,开发人员能利用的工具主要是调试器。
测试的目的是显示存在错误,而调试的目的是发现错误或导致程序失效的错误原因,并修改程序以修正错误。调试是测试之后的活动。
测试和调试在目标、方法和思路上都有所不同,如下:
1 、测试从一个已知的条件开始,使用预先定义的过程,有预知的结果。调试从一个未知的条件开始,结束的过程不可预计。
2 、测试过程可以实现设计,进度可实现确定。调试不能描述过程或持续时间。
3 、测试是显示错误的行为。调试是推理的过程。
4 、测试显示开发人员的错误。调试是开发人员为自己辩护。
5 、测试能预期和可控。调试需要想象,经验和思考。
6 、测试能在没有详细设计的情况下完成。没有详细设计的信息调试不可能进行。
7 、测试能由非开发人员进行。调试必须由开发人员进行。