---
title: Acceptance Testing
localeTitle: 验收测试
---
## 验收测试

验收测试，执行测试技术以确定软件系统是否符合要求规范。此测试的主要目的是评估系统是否符合业务要求，并验证其是否符合向最终用户交付的必要条件。

有各种形式的验收测试：

\- >用户验收测试

\- >业务验收测试

\- > Alpha测试

\- > Beta测试

# 验收标准

验收标准是基于以下属性定义的

\- >功能正确和完整

\- >数据完整性

\- >数据转换

\- >可用性

\- >性能

\- >及时性

\- >机密性和可用性

\- >可安装性和可升级性

\- >可扩展性

\- >文档

# 验收测试计划 - 属性

验收测试活动分阶段进行。首先，执行基本测试，如果测试结果令人满意，则执行更复杂的场景。

验收测试计划具有以下属性：

\- >简介

\- >验收测试类别

\- >操作环境

\- >测试用例ID

\- >测试题目

\- >测试目标

\- >测试程序

\- >测试时间表

\- >资源

\=>验收测试活动旨在得出以下结论之一：

接受系统交付

在请求的修改完成后接受系统

不要接受系统

# 验收测试报告 - 属性

验收测试报告具有以下属性：

\- >报告标识符

\- >结果摘要

\- >变化

\- >建议

\- > To-DO列表摘要

# \- >批准决定

验收测试侧重于检查开发的软件是否满足所有要求。其主要目的是检查开发的解决方案是否满足用户期望。

[这种快速风格指南有助于确保您的拉取请求被接受](https://github.com/freecodecamp/guides/blob/master/README.md) 。

验收测试是软件开发中的成熟实践。验收测试是代码功能测试的主要部分。

验收测试测试代码按预期执行，即在给定预期输入的情况下产生预期输出。

验收测试用于测试相对较大的软件功能块，即功能。

### 例子

您创建了一个页面，要求用户首先在对话框中输入其名称，然后才能看到内容。您有一个受邀用户列表，因此任何其他用户都将返回错误。

这里有多种方案，例如：

*   每次加载页面时，都需要输入您的名字。
*   如果您的名字在列表中，则对话框将消失，您将看到该文章。
*   如果您的名称不在列表中，则对话框将显示错误。

您可以为较大的对话框功能的每个子功能编写验收测试

除了处理测试将如何执行的基础结构的代码之外，您对第一个场景的测试看起来像（在伪代码中）：

鉴于该页面已打开 该对话框应该是可见的 对话框应包含一个输入框 并且输入框应该有占位符文本“你的名字，请！”

### 笔记

验收测试可以用任何语言编写，并使用各种适合的工具运行，这些工具可以处理上面提到的基础结构，例如打开浏览器，加载页面，提供访问页面元素的方法，断言库等等。

每次你编写一个将再次使用的软件（即使是你自己），它也有助于为它编写测试。当您自己或其他人对此代码进行更改时，运行测试将确保您没有破坏现有功能。

它通常由用户或主题专家执行。它也被称为用户验收测试（UAT）。 UAT涉及最常见的现实生活场景。与系统测试不同，它不关注错误或崩溃，而是关注功能。 UAT在测试生命周期结束时完成，并将决定软件是否移至下一个环境。

定义应该编写哪些验收测试的好方法是为用户故事添加验收标准。使用验收标准，您可以定义用户故事何时可以部署，并根据您的意愿完成问题。

在敏捷项目中，团队必须为所有用户故事定义验收标准。验收测试工作将使用定义的标准来评估交付的功能。当故事可以通过所有验收标准时，它就完成了。

验收测试还可以验证完成的史诗/故事/任务是否满足定义的验收标准。与完成的定义相反，此标准可以涵盖团队想要解决的特定业务案例。这提供了良好的工作质量验证。

#### 更多信息：

*   [国际软件测试资格委员会](http://www.istqb.org/)
