用户验收测试与测试用例场景和功能测试之间的差异

时间:2017-05-20 18:29:10

标签: testing agile uat

在敏捷软件开发的背景下,User Acceptance Test (UAT)Test Case ScenarioFunctional Test之间的区别是什么?

我所参与的团队成员,他们认为这三件事情是不同的,但我认为它们完全相同。

事实上,所有这些都是为最终用户而设计的

3 个答案:

答案 0 :(得分:2)

  • 用户验收测试让业务用户试用您的应用。
  • 当QA检查新功能时,还会进行验收测试 - 您可以将其称为故事验收测试,以区分这些。这些不一定是功能测试(可能是安全性,性能测试等)。
  • 测试用例是检查一小段功能的许多步骤。它具有先决条件,步骤,预期结果,实际结果。这是进行功能测试的方法之一。其他可能是:探索性测试,检查表。
  • 测试场景 - 涵盖更大图景的步骤。它们通常涵盖真实用户如何使用该应用程序的案例。但这些都是由QA团队执行的。
  • 功能测试 - 检查功能的测试,而不是例如性能。这也可以是一个单元测试,但由于这个术语主要由QA使用 - 当人们谈论它们时,它们通常意味着功能系统测试。

请注意,不同的权威机构可能会使用相同术语的不同定义。查看Holes in testing terminology: Test Types and Test Levels。由于无法找到真正的术语,因此即使在其他公司和团队中使用不同的术语,您在团队中始终如一地使用术语也更为重要。

答案 1 :(得分:1)

有很多不同类型的测试。其中许多重叠。许多人使用相同的工具。许多是其他更通用术语的专业化。他们常常模糊在一起。人们一直在争论术语。

你说他们都有最终用户是正确的,但他们是不同的。

User Acceptance Test

这是验收测试的一种特定形式,其中subject-matter expert,理想情况下是客户或其代表,测试软件。这是QA完成的功能和验收测试的补充。它旨在尽可能地模拟使用该软件的实际最终用户;要求测试人员使用新系统执行一系列常见任务,但没有给出具体说明,也没有指导如何执行。

例如,如果您要为航空公司创建网站,可能会要求他们注册,登录,预订航班,付款,办理登机手续,检查航班状态等。

Functional Test

这是由QA角色完成的黑盒测试。它验证了它应该做的事情;你给它输入,你检查输出。通常,这是针对规范和/或需求文档进行测试。

“功能”这里不是指代码函数,而是系统按预期运行。测试特定功能是unit testing

它们可以是纯粹的功能,“当我做X时,我得到Y”。它们可以用于资源使用,“当我做X时,它使用的不超过Y内存/时间”。或者关于错误检查,“当我给它垃圾时,我得到一个格式错误”。任何验证它的东西都符合要求。

测试用例场景

听起来像Scenario Testing:它使用类似于用户故事的故事,帮助测试人员完成复杂的测试场景。场景测试测试在实际使用过程中可能出现的复杂事物组合,并且经常跨越多个系统。

测试场景的一个示例可能是:“在处理系统中间用完磁盘空间;验证管理员已通知,一旦清除空间,处理将恢复,并且没有数据丢失”。

用户验收测试可能会使用场景测试。

这些是我的经验法则:

  • 单元测试:这个功能有用吗?
  • 集成测试:这些功能一起工作吗?
  • 功能测试:它是否按要求运行?
  • 验收测试:客户可以接受吗?
  • 回归测试:它是否仍然像以前一样工作?

答案 2 :(得分:0)

用户验收测试是一个获得系统满足商定的客户/产品经理要求的确认的过程。

功能测试是软件的实际功能测试,可以有许多不同类型的测试,但在简单的单词测试中,功能应该是预期的。

测试场景是高级别的测试用例,当模块测试的第一个分类然后模块分成一个场景,最后一个小的和特定的测试步骤与预期的结果说测试用例,所以测试场景是组测试用例仅限于特定功能和模块。