User Acceptance Testing (UAT), also known as End-User, Application or Beta Testing, is the final phase of the testing process ahead of release, installation or distribution of the software.
During this phase, actual software users test the software to make sure it works as expected in real-world and day-to-day business scenarios in accordance with the specifications.
The steps in conducting User Acceptance Testing include:
There are 10 accepted prerequisites for User Acceptance Testing according to Guru99:
There are 5 different types of User Acceptance Testing.
User Acceptance Testing consists of test steps which verify that specific requirements are working for the end-user. UAT focuses on how well the client can use the product to complete the required tasks.
Functional Testing tests specific requirements and specifications of the software but it lacks the user component. While a functional test might conclude that software behaves as expected it won’t verify that it will actually work for the user.
In the Agile framework, a Product Backlog is composed of user stories. User stories describe the user, the feature they want to use and the reason they need it.
This provides valuable guidelines for User Acceptance Testing. The feature has been clearly defined by who needs it and why. The acceptance criteria should become apparent during Backlog Refinement. During Backlog Refinement the Product Owner and Development Team collaborate on the details of user stories, including acceptance criteria. Additional user acceptance testing criteria may also be defined for functional or non-functional features.
An increment is only considered to be done when it’s a working (i.e. it’s fully tested) piece of software that fulfils the customer need, has the feature(s) that the customer wanted, and meets all the acceptance criteria.