2、 软件测试从一个已知的条件开始,有预知的结局。而调试从未知的条件开始,其结局不可预知。
3、 软件测试可以计划,可以预先制定测试用例和过程。工作进度可以度量,而调试不能计划,进度不可度量。
4、 调试是在测试之后,在方法,思路,策略上都有所不同。
5、 测试的对像可以是文档和代码,而调试的对像只能是代码。
6、 调试是随机性的,由程序员完成,为了程序可运行。
软件测试是为了发现错误而执行程序的过程。或者说,软件测试是根据软件开发各阶段的规格说明和程序的内部结构而精心设计一批测试用例(即输入数据及其预期的输出结果),并利用这些测试用例去运行程序,以发现程序错误的过程。
测试是为了发现软件中存在的错误;证明软件开发的正确性。
测试以已知条件开始,使用预先定义的程序,且有预知的结果,不可预见的仅是程序是否通过测试;调试一般是以不可知的内部条件开始,除统计性调试外,结果是不可预见的。
测试是有计划的,需要进行测试设计;不受时间约束。
测试经历发现错误、改正错误、重新测试的过程;调试是一个推理的过程,并且在开发的整个过程中都必须进行调试。
测试的执行是有规程的。
测试经常是由独立的测试组在不了解软件设计的条件下完成的;必须由了解详细设计的开发人员完成。
大多数测试的执行和设计可以由工具支持;调式时,开发人员能利用的工具主要是调试器。
简而言之,测试的主要工作是找缺陷,而调试的目的是为了解决缺陷。具体而言,软件调试是在进行了成功的软件测试后才开始的工作。软件调试与软件测试不同,软件测试的目标是尽可能多的发现软件中的错误,而进一步诊断和改正程序中潜在的错误才是调试的任务。通常,调试工作是一个具有很强技巧性的工作。一个软件开发人员在分析测试结果的时候会发现,软件运行失效或出现问题,往往只是潜在错误的外部表现,而外部表现与内在原因之间常常没有明显的的联系。如果要找出真正的原因,排除潜在的错误,不是一件易事。因此,调试是通过现象,找出原因的一个思维分析的过程。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)