Software Quality.com

user acceptance testing (UAT)

By Alexander S. Gillis

What is user acceptance testing (UAT)?

User acceptance testing (UAT), also called application testing or end-user testing, is a phase of software development in which the software is tested in the real world by its intended audience. UAT is often the last phase of the software testing process and is performed before the tested software is released to its intended market. The goal of UAT is to ensure software can handle real-world tasks and perform up to development specifications.

In UAT, users are given the opportunity to interact with the software before its official release to see if any features have been overlooked or if it contains any bugs. UAT can be done in-house with volunteers, by paid test subjects using the software or by making the test version available for download as a free trial. The results from the early testers are forwarded to the developers, who make final changes before releasing the software commercially.

UAT is effective for ensuring quality in terms of time and software cost, while also increasing transparency with users. UAT also enables developers to work with real cases and data, and if successful, the process can validate business requirements.

What is the purpose of UAT?

User acceptance testing validates the testing done at the end of the development cycle. It is typically completed after unit testing, quality assurance, system testing and integration testing. The software may undergo other testing phases and be completely functional but might still not meet its requirements if it is not well received by its intended users. This can happen if software requirements were not clearly defined to the developers, if certain modifications made during development changed the scope of the project or if the software just was not ready to be tested in a dynamic, real-world environment. Overall, UAT safeguards against faulty, ineffective or unfinished software products being released.

To be effective, UAT should be thorough and reflect user requirements, while also identifying potential problems not yet detected in previous tests. Without UAT, tested software may be released with bugs or a lack of a clearly defined goal for end users. These issues can be costly and potentially damaging to the software vendor's reputation.

Who performs UAT?

End users normally perform user acceptance testing. They are the most effective group to test software in this form because they know exactly how the software will be used on a daily basis and what changes need to be made to be suitable for this day-to-day use.

Internal functional experts also play a role in UAT, as they help shape UAT cycles and test management, as well as interpret the results.

Types of UAT

Multiple types of software tests qualify as user acceptance testing. These tests include the following:

How to perform UAT

The number of steps involved in a user acceptance test may differ, depending on how granularly the team wants to define each step in the process. For the most part, however, these steps commonly include the following:

  1. Plan. The business requirements, time frame and strategies for UAT are outlined.
  2. Identify and create real-world test scenarios. These test scenarios should cover as many functional cases as possible that end users may face.
  3. Select the testing team. Developers can decide whether to have only a few end users test the software or to open up testing to more participants by offering a free trial over the web. End users should have knowledge of the business and how to detect and report issues.
  4. Test and document. The end users begin testing the software, logging any potential bugs or other issues. All bugs should be recorded in a bug tracker with notes on how to reproduce the errors.
  5. Update code, retest and sign off. The development team adjusts the code based on test results -- resolving any bugs or making suggested changes -- and then retests. Once the software meets the users' criteria, the tester signs off on the changes.

After this, the software should be ready for release into production.

Challenges of UAT

Some of the possible challenges or downfalls of user acceptance testing include the following:

UAT best practices

Some best practices of user acceptance testing include the following:

Learn how to streamline UAT with processes from Agile.

14 Mar 2022

All Rights Reserved, Copyright 2006 - 2024, TechTarget | Read our Privacy Statement