为什么我们需要用户验收测试(UAT)?

作者: Judy Howell
创建日期: 5 七月 2021
更新日期: 1 七月 2024
Anonim
Tools and Infrastructure for Large Teams | Unreal Dev Days 2019 | Unreal Engine
视频: Tools and Infrastructure for Large Teams | Unreal Dev Days 2019 | Unreal Engine

内容



来源:Lightcome / iStockphoto

带走:

一旦软件经历了单元,集成和系统测试,验收测试的需求就显得多余了。为什么用户接受测试(UAT)仍然很重要?在这里,充分了解UAT的好处以及其独特性。

演示和死亡!

您是否曾经进行过客户介绍或培训,但是中途遇到了什么问题?或者,您是否曾经给某人一些指示,并且意识到您错过了某些东西,或者它并没有按照您希望的那样工作?在每种情况下,您都将采用最终用户的观点,并以该角色使用软件。可能是,您做了不同的事情是因为您以用户而不是开发人员的身份思考。

走进用户的鞋子

用户接受度测试(UAT)的独特角度是测试软件是否为最终用户。该软件旨在为用户提供切实的成果。例如,电子商务站点允许客户购买产品。当客户下订单时,电子商务站点软件会通知商店管理员,以便可以将选定的项目拉出并打包以进行装运。可能有不同类型的软件用户,因此此测试阶段使开发团队可以验证最终用户是否达到了预期的软件结果。

简要的UAT历史

在互联网出现之前,大多数软件都是为已知的用户部署的。如果公司为客户开发了软件,则指定的经理有权验证软件是否符合合同条款。这是为了表示该软件“适合特定目的”,这是通过选择最终用户代表进行测试并提供结果报告来实现的。由于用户是一个已知的封闭小组,因此通常可以通过非常详细的测试步骤来对每个人进行软件使用方面的培训。今天的座右铭是,细节越多越好。

随着网络上为客户开发了越来越多的软件,最终用户群体变得更加开放。不再可能识别和培训所有可能的最终用户,因此软件设计必须更加强调可用性,并且即使在提供的信息最少的情况下也必须易于理解。因此,UAT必须进行更改以满足这些要求。

UAT告诉您系统的可用性

因此,UAT不仅告诉我们某个软件的功能范围,而且还告诉我们它的可用性。大多数UAT的最佳执行者是了解目标最终用户的个人,他们将在几乎没有先验知识的情况下体验该软件,并且可以真正表明该软件的易用性以及需要改进的地方。

谁可以执行UAT?

当开发人员测试软件时,他们会记住有关系统编写方式的详细信息。这种知识会影响测试,开发人员可能会采取与最终用户不同的步骤,例如更快地执行步骤或忽略最终用户可能会感到困惑的细节。因此,开发人员不是最佳的UAT候选人。那是谁


许多组织雇用不参与技术设计和开发的特定测试团队。较小的组织或者将测试分配给非开发人员,例如履行行政职责的人员,或者使用外部公司的服务。一些组织使用所谓的“走廊测试”,即从字面上挑选未积极参与项目的员工,并要求他们从最终用户的角度尝试该系统。一个示例是在线订购产品。

在内部测试之后,可能会进行试点或Beta测试阶段,从而使该软件可供“真实”用户小组使用,这些用户被邀请免费或以大幅折扣使用该产品,以换取详细的使用反馈。

没有错误,没有压力-在不破坏生活的情况下创建可改变生活的软件的分步指南


当没有人关心软件质量时,您就无法提高编程技能。

面向不同受众的渐进式UAT阶段提高了对软件可用性的信心。结合迭代开发的各个阶段,可以执行多个UAT周期以在交付新功能时对其进行测试,同时还可以验证以前的功能。

优秀的UAT测试人员很想知道如果他们采用不同的方法达到特定目标会发生什么。毕竟,每个人都以不同的方式使用软件,因此,如果一小群人可以涵盖许多可能性,则该软件在操作模式下的信心就更高。

成功与失败的流程

UAT流程应验证每种类型的软件用户都能获得成功流程和失败流程所需的切实成果。

在成功流程中,最终用户会以预期的结果离开,例如下达产品订单。在故障流程中,该软件通过某种形式的错误情形(例如,当客户提供无效的信用卡付款信息时)为最终用户提供支持。

为了验证功能,必须向测试人员提供一些信息。否则,他们不知道该软件应该做什么。但是为了测试可用性,这必须是最小的–仅基于任务或需求,例如购买“ x”(产品)并支付“ y”(使用信用卡详细信息)。必须由测试人员承担举证责任,以记录观察,成功和失败的情况。

UAT的好处

良好的UAT的主要好处在于,它可以使日常维护成本保持在最低水平。尽早修复功能和可用性问题比较便宜。当有更多代码需要回归测试或原始开发人员不可用时,更难以修复错误。

UAT分多个阶段执行,并且针对不同类型的测试对象,这为在测试的早期阶段识别和修复损坏的功能/可用性问题提供了最佳机会。将UAT目标保持在任务和需求级别上,使测试人员可以观察和注意更多,甚至尝试在开发人员提供的范围之外进行操作。


UAT周期的反馈可以反馈到后续的开发迭代中,从而提高软件的健壮性和可用性。时间安排得当,甚至Beta测试阶段也可以通过提供参考和案例研究反馈来补充营销和销售活动。