0% found this document useful (0 votes)
24 views8 pages

User Acceptance Testing

User acceptance testing (UAT) is performed by end users or clients to validate that a system meets requirements before launch. UAT takes place after unit, integration, and system testing. It involves setting up a test environment, designing test cases, executing tests, reporting bugs, and approving the system.

Uploaded by

harimjaf0333
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
24 views8 pages

User Acceptance Testing

User acceptance testing (UAT) is performed by end users or clients to validate that a system meets requirements before launch. UAT takes place after unit, integration, and system testing. It involves setting up a test environment, designing test cases, executing tests, reporting bugs, and approving the system.

Uploaded by

harimjaf0333
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
You are on page 1/ 8

User Acceptance Testing:

User acceptance testing is done after unit testing, integration testing and system testing. UAT is
performed by end users or client to check or validate the system according to their requirements or
business need. UAT is the last stage of software development process before system go live.

Following is the process to perform UAT.

 Environment Setup: UAT is performed in a separate testing environment that mirrors actual
production environment. Developers set up a separate environment where client or end user
perform UAT.
 Planning: Planning or strategy is to be prepared to perform UAT. Planning includes testing scope,
identify stake holders, Define strategy, entry/exit criteria. Planning is an important step to
perform UAT.
 Test case Design: This step involves identifying test scenarios and prepare all possible test cases
against those scenarios. All the system is being reviewed and testing scenarios are identified.
 Test Data Preparation: After designing all possible test cases, testing data is prepared or designed to
perform these test cases. Test data preparation includes all possible inputs against the test case to be
performed.
 Define Acceptance criteria: This is an important step in UAT phase where acceptance criteria or
actual results of the test cases are defined. The purpose of this step is to know that what should
be the actual behavior of the system against that test case.
 Test case execution: Once all the testing data is prepared and acceptance criteria is defined,
clients/end users tend to execute the designed test cases. After test execution the validate their
requirements/business goals against actual results of the test case.
 Test Management: After performing test cases, it should be verified that all the designed test
cases are performed and verify its progress. Prioritize the defects and track defect resolution.
 Bug Reporting: Defects found during UAT are documented and reported at this stage for
development team. Their impacts on the system and their priority/severity are examined.

Real-Time example:
We take the real time example of UAT of the Banking website. An online banking system is developed by
a company. After all the phases of Software development life cycle, system is ready for UAT process. A
testing environment is set-up by developers for UAT. Suppose client is performing UAT in Billings payment
module that includes different billings payment method of utilities bills etc. While performing UAT, he
found that one billing payment method i.e., Payment by credit card is not working as per their business
need. So, he reports that issue and communicate about that defect with development team.
Furthermore, developers re-test that issue at their end and fix it asap. After fixing that issue, Regression
testing is performed by QA team to verify that reported issue is resolved and updated code do not have
any impact on the other modules of the system. After that, Client again reviews that functionality or
module and give final approval.

Why we need:
The main purpose of UAT is to validate that all requirements from end users has been implemented with
less defect ratio. The software may be fully functional technically but sometime fail because
requirements are not completely defined or communicated with developers.

UAT also validates that change requirement has been implemented as per business need. There could be
some requirements that have not been communicated with development team. UAT addresses these
changes. It also ensures the losses that may arise from post-release issues will be reduced.

Impacts on Testing:

 Reduce Post-release defects.


 Client satisfaction.
 Reduce Bug fixing cost.
 Validating requirements/business flows.
 Enhancing user experience/useability.

Approaches to Perform UAT:


The most common approaches to perform UAT are Alpha testing and Beta Testing.

Alpha Testing:

 Performed by internal resources, development team.


 Perform before Beta testing.
 Focused on perform testing in the controlled environment.
 Performed in a development or staging.

Beta Testing:

 Performed by large group of external users or clients who do not have much technical
knowledge.
 Perform after Alpha testing.
 Beta testing scope extends the testing scope to real world scenarios
 Helps identify issues that are not reported in Alpha testing.
 Performed in more diverse environment and testing environment that mirrors production
environment.

Best Practices for UAT:


 Prepare UAT Plan early in project life cycle.
 Prepare checklist before UAT starts.
 Alpha testing should be performed.
 Test End-to-end Business flows.
 Test the system with real world scenarios.
 Perform Useability testing.
 Conduct feedback session before Go live.

You might also like