实施验收测试的常用策略有三种,它们分别是:
· 正式验收
· 非正式验收或 Alpha 测试
· Beta 测试
您选择的策略通常建立在合同需求、组织和公司标准以及应用领域的基础上。 正式验收测试是一项管理严格的过程,它通常是系统测试的延续。计划和设计这些测试的周密和详细程度不亚于系统测试。选择的测试用例应该是系统测试中所执行测试用例的子集。不要偏离所选择的测试用例方向,这一点很重要。在很多组织中,正式验收测试是完全自动执行的。
对于系统测试,活动和工件是一样的。在某些组织中,开发组织(或其独立的测试小组)与最终用户组织的代表一起执行验收测试。在其他组织中,验收测试则完全由最终用户组织执行,或者由最终用户组织选择人员组成一个客观公正的小组来执行。
这种测试形式的优点是
· 要测试的功能和特性都是已知的。
· 测试的细节是已知的并且可以对其进行评测。
· 这种测试可以自动执行,支持回归测试。
· 可以对测试过程进行评测和监测。
· 可接受性标准是已知的。
缺点包括
· 要求大量的资源和计划。
· 这些测试可能是系统测试的再次实施。
· 可能无法发现软件中由于主观原因造成的缺陷,这是因为您只查找预期要发现的缺陷。 在非正式验收测试中,执行测试过程的限定不象正式验收测试中那样严格。在此测试中,确定并记录要研究的功能和业务任务,但没有可以遵循的特定测试用例。测试内容由各测试员决定。这种验收测试方法不象正式验收测试那样组织有序,而且更为主观。
大多数情况下,非正式验收测试是由最终用户组织执行的。
这种测试形式的优点是
· 要测试的功能和特性都是已知的。
· 可以对测试过程进行评测和监测。
· 可接受性标准是已知的。
· 与正式验收测试相比,可以发现更多由于主观原因造成的缺陷。
缺点包括
· 要求资源、计划和管理资源。
· 无法控制所使用的测试用例。
· 最终用户可能沿用系统工作的方式,并可能无法发现缺陷。
· 最终用户可能专注于比较新系统与遗留系统,而不是专注于查找缺陷。
· 用于验收测试的资源不受项目的控制,并且可能受到压缩。 在以上两种验收测试策略中,Beta 测试需要的控制是最少的。在 Beta 测试中,采用的细节多少、数据和方法完全由各测试员决定。各测试员负责创建自己的环境、选择数据,并决定要研究的功能、特性或任务。各测试员负责确定自己对于系统当前状态的接受标准。
Beta 测试由最终用户实施,通常开发(或其他非最终用户)组织对其的管理很少或不进行管理。Beta 测试是所有验收测试策略中最主观的。
β测试是软件的多个用户在一个或多个用户的实际使用环境下进行的测试。开发者通常不在测试现场,Beta测试不能由程序员或测试员完成。
当开发和测试根本完成时所做的测试,而最终的错误和问题需要在最终发行前找到。这种测试一般由最终用户或其他人员员完成,不能由程序员或测试员完成。
该测试形式的优点
· 测试由最终用户实施。
· 大量的潜在测试资源。
· 提高客户对参与人员的满意程度。
· 与正式或非正式验收测试相比,可以发现更多由于主观原因造成的缺陷。
缺点
· 未对所有功能和/或特性进行测试。
· 测试流程难以评测。
· 最终用户可能沿用系统工作的方式,并可能没有发现或没有报告缺陷。
· 最终用户可能专注于比较新系统与遗留系统,而不是专注于查找缺陷。
· 用于验收测试的资源不受项目的控制,并且可能受到压缩。
· 可接受性标准是未知的。
· 您需要更多辅助性资源来管理 Beta测试员。