验收测试是部署软件之前的一个测试操作。在软件产品完成了单元测试、集成测试和系统测试之后,产品发布之前所进行的软件测试活动。它是技术测试的一个阶段,也称为交付测试。验收测试的目的是确保软件准备就绪,并且可以让用户将其用于执行软件的既定功能和任务。
验收测试是向未来的用户表明系统能够像预定要求那样工作。经集成测试后,已经按照设计把所有的模块组装成一个完整的软件系统,接口错误也已经基本排除了,接着就应该验证软件的有效性,这就是验收测试的任务,即软件的功能和性能如同用户所合理期待的那样。
验收测试,系统开发生命周期方法论的一个阶段,这时相关的用户和独立测试人员根据测试计划和结果对系统进行测试和接收。它让系统用户决定是否接收系统。它是一项确定产品是否能够满足合同或用户所规定需求的测试。这是管理性和防御性控制。
在工程及其他相关领域中,验收测试是指确认一系统是否符合设计规格或契约之需求内容的测试,可能会包括化学测试、物理测试或是性能测试。在系统工程中验收测试可能包括在系统(例如一套软件系统、许多机械零件或是一批化学制品)交付前的黑箱测试。软件开发者常会将系统开发者进行的验收测试和客户在接受产品前进行的验收测试分开。后者一般会称为使用者验收测试、终端客户测试、实机(验收)测试、现场(验收)测试。在进行主要测试程序之前,常用冒烟测试作为一个此阶段的验收测试。