The software development life cycle is complex. Among the many moving pieces of developing software is the process of testing. Testing ensures quality in the product and proves the code is functioning as expected and as needed. Therefore, many different testing activities should occur within the software building process. User Acceptance Testing, or UAT, is just one of the many types of testing involved in the software development life cycle. Most commonly, it is the last testing activity before release.

UAT testing

User Acceptance Testing (UAT) focuses on the functionality and usability of the software rather than the technical aspects. The purpose of User Acceptance Testing is to verify the application meets the business requirements. It is also the final phase of testing before moving the application into production with the aim of avoiding unwanted surprises when the product is released. In preparation, perform unit, integration, and system testing before beginning UAT, and fix and rest all major defects before starting too.

Who does User Acceptance Testing?

UAT should be, and is, usually completed by the client, but on some occasions, this may also be the end-user. End-users are the people who will eventually be using the application and therefore can validate that requirements were both communicated and executed effectively. Because the goal is to ensure the business needs are met, the UAT tester should have a good understanding of the business processes yet approach the test as though a new user of the application.

How is User Acceptance Testing done?

In order to perform User Acceptance Testing, you first need to have the business requirements before defining the test cases, then finally, run the tests. A test plan is needed for defining the scope of testing, who will conduct the testing, how defects will be logged, outline any risks, and more. Using a test case management tool like TestLodge, can help with documenting the test plans and test cases. Once these documents are complete, testers can then login to their management tool and execute the testing, flagging each test case as Pass, Fail, or Skipped. Next, they can input actual results, which, if using TestLodge, will carry over directly to your bug tracking tool by using one of the many issue tracking integrations available there.

Why should you do User Acceptance Testing?

Performing User Acceptance Testing may seem redundant because so many quality control testing activities are done ahead of it, but UAT is an integral part of the software development life cycle. It gives confidence to both the software development team and client that the software is on track for release without any major issues or unexpected outcomes. Features are coded the way the developer feels will best fit the requirements, but the outcome of this isn’t always inline with what the actual business requires. With UAT, you can ensure business requirements are met and that any changes to requirements are communicated effectively.