📅  最后修改于: 2021-01-11 00:52:07             🧑  作者: Mango
验收测试是基于用户需求和函数处理的正式测试。它确定软件是否符合指定要求和用户要求。它是一种黑匣子测试,其中所需的用户数量涉及测试系统的接受程度。这是软件测试的第四个也是最后一个级别。
用户验收测试(UAT)是一种测试,由客户在接受最终产品之前进行。通常,UAT由客户(领域专家)完成,以使他们满意,并根据给定的业务场景,实时场景检查应用程序是否正常运行。
在此,我们仅关注客户经常使用的功能和场景,或者业务的大多数用户场景,或者最终用户或客户每天使用的场景。
但是,该软件已经通过了三个测试级别(单元测试,集成测试,系统测试),但是当最终用户在实际场景中使用系统时,仍然可以识别一些小错误。
验收测试是对以前完成的所有测试过程的挤压。
一旦对软件进行了单元测试,集成测试和系统测试,验收测试就显得多余了,但是由于以下原因,它是必需的。
注意:一旦我们从客户那里收集了需求并完成了编码过程,测试工程师便会开始所有不同类型的测试,直到应用程序变得稳定为止。
一旦该应用程序没有错误,我们将其移交给客户,没有客户在使用它之前盲目接受该应用程序。因此,他们会对其满意度进行一轮测试,这就是用户接受度测试。
验收测试可以由不同的人在不同的情况下执行。
例如,blue-dart公司向TCS提出了开发应用程序的要求,而TCS将接受需求并同意在两个版本中交付应用程序,如下图所示:
8月10日,测试经理告诉项目经理该应用程序中存在一个严重的错误,这将需要另外四天时间对其进行修复。
但是项目经理说,我们必须在给定的时间内交付软件。修复缺陷还需要30天,否则,我们将必须在给定发布日期之后的每一天支付罚款(罚款)。这是真实情况吗?不,让我们看看三种不同的情况,并了解谁执行验收测试。
情况1
在本文中,我们将讨论验收测试的执行方式,而测试工程师将在此处进行验收测试。
通常,在上图中可以看到测试应用程序的实际流程,但是在这里几乎没有什么区别,因为我们知道端到端测试或系统测试在何处结束以及验收测试将在哪里进行。要了解这种情况,请执行以下过程:
蓝镖提供了要求,TCS开发了应用程序并执行了所有测试并移交给了蓝镖公司。
现在,问题来了,蓝箭人一旦从TCS那里获得该应用程序,便会立即使用该应用程序?否,blue dart公司在获得软件后会有一组测试工程师,并且该团队将开始测试应用程序,并且这种端到端测试是在客户环境中完成的,这称为“用户接受测试” 。
让我们看看TCS测试工程师和Blue-dart工程师之间的区别:
在TCS中,测试人员将执行功能测试,集成测试和系统测试,而在Blue-dart中,测试人员将仅执行端到端或系统测试,这称为验收测试。
在TCS进行的端到端测试与blue-dart之间的区别如下:
为了理解这一点,我们可以看下面的例子,或者如果我们有这样的应用程序格式:
将应用程序提供给飞镖测试工程师后,他们将进行测试,并且应用程序应生成一条文本消息“已创建包裹1发票ID ”。需求中没有提到它,或者它在那里,并且TCS不会解决它。然后,TCS的罚款(罚款)仅计入TCS,而TCS的测试工程师不会知道这一点,因此,我们可以看到在TCS和Blue-dart进行的测试之间的区别。
案例2
在这种情况下,我们将看到员工如何成为最终用户并执行验收测试。
该应用程序是在TCS环境下开发和测试的,然后发送给blue-dart。在Blue Dart中,他们的测试工程师更少,因此他们无法进行验收测试。因此,为此,在300名蓝镖员工中,他们将向30名员工提供应用程序并将其安装到他们的系统中,并要求他们开始使用该应用程序并查找任何缺陷或问题。
现在有30名员工将执行虚拟实施,这意味着他们将数据提供到应用程序中并手动将数据写入。在这里,员工成为最终用户,并在使用应用程序时识别错误和问题。
这些问题已根据要求进行了验证,现在对TCS收取罚款(有时按小时收取罚款)。如果识别出的错误不符合要求,那么blue-dart可以申请增强请求[REF]和更改请求[CR]。
“增强请求”意味着如果蓝箭认为可以更好地改进和开发特定模块,然后他们可以发送客户需求规范[CRS],因为REF和TCS将遵循CRS并确保进行必要的更改。
变更请求意味着,如果未正确指定需求,则蓝箭会提供确切的需求和变更请求。
因此,验收测试也可以定义为端到端测试,可以由在客户端环境中工作的工程师来完成。在这里,他们采用实时方案并检查应用程序是否运行良好,并且由于最终用户知道业务流程的工作原理,因此我们可以制定实时业务方案。
注意:
如果我们有更多的版本用于验收测试,则意味着:
案例3
在这种情况下,如果飞镖客户成为最终用户。
在这里,该应用程序是在蓝飞镖的生产服务器上开发,测试和实现的,并且第一个版本中有n个用户开始使用该应用程序。在使用该应用程序时,蓝箭具有更多的功能和增强功能,这些功能和增强功能随CRS一起发送到TCS,之后TCS将对模块进行进一步的更改并将其发送回蓝箭。
因此,这里的问题是,blue-dart从他们的最终用户和客户那里收集需求时,便开发了该应用程序。
发布的数量取决于以下事实:
注意:
修补程序:在生产环境中,每当客户发现关键错误时,我们将执行以下操作
整个过程称为修补程序,可以在几小时或一天之内完成。
例如:如果重要模块假设Login模块本身在生产服务器上不起作用,那么客户端将立即发送它以进行修复,而这必须尽快完成。
短发布
在两个主要版本之间,这是一个简短的改进版本,它发生在客户端需要紧急更改一些小功能时。
例如,如果我们有60名开发人员,其中10名开发人员将出任,40名测试工程师中,则3名测试工程师将出任,他们将开发和测试应用程序。在将其添加到生产服务器之前,客户会进行一轮简短的验收测试。
在这一步骤中,测试团队将分析需求文档以找出开发软件的目标。通过使用需求文档,过程流程图,系统需求规范,业务用例,业务需求文档和项目章程来完成测试计划。
验收测试可以通过使用几种工具来完成。下面给出一些:
通过使用几种工具来完成;下面给出一些:
验收测试使用此工具执行基于浏览器的自动化测试用例。它使用Ruby语言进行进程间通信。
该工具用于输入输入值并自动生成测试用例。用户需要输入值,这些值由工具用于执行测试用例并产生输出。它使用Java语言进行进程间通信。该工具使创建测试用例以及以表格形式记录下来变得容易。
根据测试计划,客户必须以自己的语言和自己编写要求,但
如果以这种方式完成此过程,则将破坏验收测试的存在。