ThinkChat2.0新版上线,更智能更精彩,支持会话、画图、阅读、搜索等,送10W Token,即刻开启你的AI之旅 广告
# 什么是用户验收测试(UAT)? 与例子 > 原文: [https://www.guru99.com/user-acceptance-testing.html](https://www.guru99.com/user-acceptance-testing.html) ## 什么是 UAT? **用户接受测试(UAT)**是由最终用户或客户端执行的一种测试,目的是在将软件应用程序移至生产环境之前验证/接受软件系统。 在完成功能,集成和系统测试之后,在测试的最后阶段完成 UAT。 UAT 的主要目的是验证端到端业务流程。 它不关注外观错误,拼写错误或系统测试。 用户验收测试是在单独的测试环境中进行的,具有类似于生产的数据设置。 这是一种黑匣子测试,其中涉及两个或多个最终用户。 UAT 的完整形式是用户接受测试。 ## 谁执行 UAT? * 客户 * 终端用户 ![Performs of UAT image ](https://img.kancloud.cn/02/b4/02b4a3484eab7ad5cc38fe9d79fbefdb_277x188.png "What is User Acceptance Testing (UAT)?") ## 需要用户验收测试: 一旦对软件进行了单元,集成和系统测试,验收测试的需求就显得多余了。 **但由于**需要进行验收测试 ![What is User Acceptance Testing (UAT)?](https://img.kancloud.cn/f2/ee/f2eeef2ab4779bdd9850a9739455079e_404x283.png "What is User Acceptance Testing (UAT)?") * 开发人员根据需求文档编写软件,这是他们对需求的“自己”理解,**可能实际上并不是客户从软件**所需要的。 * 在项目过程中的需求变更可能无法有效地传达给开发人员。 ## 验收测试和 V 模型 在 VModel 中,用户验收测试对应于软件开发生命周期(SDLC)的需求阶段。 ![Acceptance Testing and V-Model image](https://img.kancloud.cn/ac/0a/ac0a10a4dbf25fd1521796d25cd1e90c_485x353.png "What is User Acceptance Testing (UAT)?") ### 用户验收测试的前提条件: 以下是用户验收测试的输入标准: * 业务需求必须可用。 * 应用代码应充分开发 * 单元测试,集成测试&系统测试应完成 * 在系统集成测试阶段没有阻碍,高,中缺陷- * UAT 之前仅接受外观错误 * 回归测试应在没有重大缺陷的情况下完成 * 所有报告的缺陷应在 UAT 之前修复并测试 * 所有测试的可追溯性矩阵应完成 * UAT 环境必须准备就绪 * 注销来自系统测试团队的邮件或通信,表明系统已准备好执行 UAT ## 如何进行 UAT 测试 UAT 由系统或软件的预期用户完成。 这种类型的软件测试通常在客户端位置进行,称为 Beta 测试。 一旦满足了 UAT 的输入标准,以下是测试人员需要执行的任务: <center> <figure>![UAT Testing process image](https://img.kancloud.cn/91/54/91541b0d1f3d6c0ebade98c41f065d52_587x358.png "What is User Acceptance Testing (UAT)?") <figcaption>UAT Process</figcaption> </figure> </center> * 业务需求分析 * 创建 UAT 测试计划 * 确定测试方案 * 创建 UAT 测试用例 * 准备测试数据(生产类似数据) * 运行测试用例 * 记录结果 * 确认业务目标 ### 步骤 1)业务需求分析 UAT 中最重要的活动之一是识别和开发测试方案。 这些测试方案来自以下文档: * 项目章程 * 业务用例 * 工艺流程图 * 业务需求文档(BRD) * 系统要求规范(SRS) ### 步骤 2)创建 UAT 计划: UAT 测试计划概述了将用于验证和确保应用程序满足其业务需求的策略。 它记录了 UAT 的进入和**退出标准,测试方案和测试案例的方法以及测试的时间表**。 ### 步骤 3)识别测试方案和测试用例: 确定有关高级业务流程的测试方案,并创建具有清晰测试步骤的测试用例。 测试用例应足以涵盖大多数 UAT 场景。 输入业务用例以创建测试用例。 ### 步骤 4)准备测试数据: 最好将实时数据用于 UAT。 出于隐私和[安全](/ethical-hacking-tutorials.html)的原因,应加密数据。 测试人员应该熟悉数据库流程。 ### 步骤 5)运行并记录结果: 执行测试用例并报告错误(如果有)。 修复错误后,请重新测试。 [测试管理](/test-management.html)工具可用于执行。 ### 步骤 6)确认达到的业务目标: 在 UAT 测试之后,业务分析师或 UAT 测试人员需要发送注销邮件。 签字后,该产品可用于生产。 用于 UAT 测试的交付物包括测试计划,UAT 方案和测试用例,测试结果和缺陷日志 ## UAT 的退出标准: 在投入生产之前,需要考虑以下几点: * 没有严重的缺陷 * 业务流程令人满意 * UAT 与所有利益相关者签署会议 ## UAT 测试人员的素质: ![What is User Acceptance Testing (UAT)?](https://img.kancloud.cn/c8/eb/c8eb23e492bad2c5e7fdd66c052cab98_150x120.png "What is User Acceptance Testing (UAT)?") UAT 测试人员应具有良好的业务知识。 他应该是独立的,并且应该是系统的**未知用户。 测试员应该是分析和横向思想家,并结合各种数据以使 UAT 成功。** 了解业务需求或流程的测试人员或业务分析师或主题专家可以准备对业务切合实际的测试和数据。 ## 最佳做法: 要使 UAT 成功,需要考虑以下几点: * 在项目生命周期的早期准备 UAT 计划 * UAT 开始之前准备清单 * 在系统测试阶段本身进行 UAT 之前的会议 * 设定期望并明确定义 UAT 的范围 * 测试端到端业务流程并避免系统测试 * 使用实际场景和数据测试系统或应用程序 * 认为是系统的未知用户 * 执行可用性测试 * 在进行生产之前进行反馈会议和会议 ## UAT 工具 市场上有几种用于用户验收测试的工具,下面列出其中一些供参考: 适用性工具:[是用作测试引擎的 Java](/java-tutorial.html) 工具。 创建测试并将结果记录在表中很容易。 该工具的用户输入格式化的输入,并自动创建测试。 然后执行测试,并将输出返回给用户。 [Watir](http://watir.com/) :它是用于在用户接受测试期间自动执行基于浏览器的测试的工具包。 Ruby 是用于 ruby 和 Internet Explorer 之间的进程间通信的编程语言。 ## UAT 的一些示例准则 * 在常规软件开发方案中,大多数时候,UAT 是在 QA 环境中执行的。 如果没有暂存或 UAT 环境 * UAT 分为 Beta 和 Alpha 测试,但是为基于服务的行业开发软件时,UAT 并不那么重要 * 当客户更多地参与时,UAT 才有意义 ### 结论: * 在软件工程中,完整的 UAT 形式是用户验收测试。 * 在软件工程中,UAT 代表用户验收测试。 * UAT 是过去 25 年间出现的众多测试之一。 * 使用 UAT,客户可以确定产品的“期望值”而不是假设。 * UAT 的好处在于,当产品投放市场时不会有任何意外。