软件测试目的可以概括为几句简短的话:测试是程序执行的过程,目的在于发现错误(缺陷);好的测试用例能有效地发现别的测试用例未发现的错误(缺陷);成功的测试是发现了未曾发现的错误(缺陷);测试无法说明错误不存在,只能说明软件错误已出现。

鉴于软件生命周期管理的各个阶段都可能产生错误。而软件需求分析、设计和实现阶段是软件的主要错误来源。软件需求阶段由于对需求定义的错误和分析的不一致性,导致引入错误;

在设计阶段,由于设计错误(如:需求实现的不完整、需求理解偏差等、设计本身的错误)会引入缺陷;在实现阶段,由于程序员的编码原因也会引入缺陷(如内存溢出、逻辑错误、数据 错误等)。

软件测试是为了发现错误而执行程序的过程。它不仅是软件开发阶段的有机组成部分,而且在整个软件生命周期管理即软件定义、设计和开发过程中占据相当大的比重。 软件测试是软件质量保证的关键环节,直接影响着软件的质量评估

软件测试不仅要讲究策略,更要讲究时效性。验收测试作为软件测试过程的最后一个环节,对软件质量、 软件的可交付性和软件项目的实施周期起到关键的作用。这就决定了软件测试是有目标的。

软件测试的目标,就是为了更快、更早地将软件产品或软件系统中的各种问题找出来,并促进开发各类人员尽快地解决问题,最终及时地向客户提供一个高质量的软件产品,使软件系统更好地满足用户的需求,同时满足软件组织自身的要求。