• info@helpingtesters.com
  • helpingtesters

Acceptance Testing | UAT testing

August 24, 2016 Types of Testing
Acceptance Testing, user acceptance testing, uat, uat testing

The Acceptance Testing is the software testing technique performed to ensure the software system has reached the requirement specifications. In effect, what the acceptance testing doing is that it confirms the system to meet the required criteria for the delivery of the software. Acceptance Testing is performed just after the System Testing and ensures the system is available for the actual use.

The Acceptance Testing is the BlackBox Tests, where the tester need not be aware of the internal structure of the code and they just specify the inputs and analyze the output and compare the expected result with the actual result. The Acceptance testing is the level of software testing where the acceptance of the software is ensured.

The Major Objectives of Acceptance Testing

  • Resolve discrepancies to ensure a perfect result.
  • Confirm the readiness of the system to live-performance.
  • Ensure the exact operations and functionalities as per the agreed criteria.
  • Acceptance criteria should be related to the Business objectives of the client.

The levels of testing are explained in the below diagram. The diagram shows, The acceptance testing comes just after The System Testing.Acceptance Testing is the final stage of validation and it involves the functional testing based on the requirements of the client/user.

Levels Of Testing

Acceptance Testing comes just after the completion of the System Testing level which ensures the requirement evaluation, functional and non-functional performance of the
system. 
The Acceptance testing tests for the Business Requirements, Client needs and the overall working of the system for the client acceptance.

Prerequisites

  • Completion of the System Testing.
  • Check for the Business Requirements.
  • Make ready the UAT Environment

Process

Based on the Requirements definition Stage, generate the use cases.

  • Create the test cases based on this analysis.
  • The test cases created should follow real-time environment test criteria and hence find out the real-time reactions of the application by inputting real-time values.
  • The evaluation and comparison of test results to the business objectives.
  • On the basis of this evaluation, there may require 2 or more test cycles with more real-time test data.

Exit Criteria

  • Ensure no critical defects left.
  • Compare the Business requirements and the tested application’ s Test Results Documents.
  • Sign off from The Acceptance Testing.

Example for Acceptance Testing

For example, Consider the “feedback” link in an application.”Feedback” link will redirect to the page which accepts feedbacks from the end users. The feedback will be sent to the client through email. The format of the e-mail, the Subject, mail content etc..should be readable and easy to understand.This feature should test in the presence of the client.

The Process of Acceptance Testing

Acceptance Test Plan

  • Determine the Acceptance test category.
  • Design the acceptance criteria
  • Operation Environment
  • Test case Specifications
    • Test case id
    • Test Title
    • Test Objective
    • Test Procedure
    • Test Result Check
  • Schedule the tests
  • Availability of Human resources Test assignment

Acceptance Test Execution

Acceptance Test Execution process is divided into 2 phases

  • The Basic Test cases

Example: Consider a Garment Stock Management application.Check the “Search” function. Find out Search by Serial No, by Itemid, By Keyword, by Category etc… Ensure the searching is possible with all the suggested keywords specified in the Requirement Specification Document.

  • The test cases which are complex to execute

Example: Check for the availability of the Raw items for the production of a product. Product Name: Body Fit Slim. Size:34 Raw items required: Elastic, Banyan Cloth, Hook

The display of Items available for the production should be clear and easy to understand. The Display format and required calculations for the measurement of production will be checked and confirmed to the client. An Acceptance Criteria Change(ACC) document is prepared on the basis of the Acceptance Testing

Acceptance Testing

The Acceptance Test Report

  • The report for acceptance test activities is generated on a daily basis.
  • Some intermediate changes may be suggested and should perform some updates after the first phase. And then goes for the second phase of the Acceptance testing which will result in another report after the suggested changes.
  • The final acceptance of the application is based on the report of the Acceptance Testing Results.
  • In this sense, Acceptance test takes on the role of Regression Testing.

Different Acceptance Testing

  • Internal Acceptance Testing [Alpha Testing]

The internal Acceptance testing is the process carries out inside the development center by the members of the Product Management, Sales, Customer Support. Can be done by anyone in the organization who are not involved directly in the Development and Testing Process. The internal acceptance testing is also known as the Alpha Testing.

  • External Acceptance Testing

The external acceptance testing is the process carried out by the people outside the organization such as customers/end users. The external acceptance testing is classified into two types based on the purpose of the software. 

Customer Acceptance Testing

The software is tested for acceptance by the customer.They are the people who asked the organization to develop the software. All the necessary features suggested in SDLC are tested for performance and if the customer is unsatisfied, the organization is responsible for making the changes as per the discussion with the development team.

User Acceptance Testing [UAT]/Beta Testing

The User Acceptance Testing is also known as Beta Testing. If the software is owned by the organization a Beta version is released for the user acceptance testing. The people who are not at all related to the organization perform the user acceptance testing. After the release of the Beta Version, a complete analysis of the user acceptance evaluation is done and make the necessary changes in the software and release the new version.

  • Business Acceptance Testing [BAT]

The Business Acceptance Testing is performed to determine whether the product meets all the business goals and strategies.The BAT focus on ensuring the capability of the software/product to deliver the business goals.

  • Operational Acceptance Testing [OAT]

The operational Acceptance Testing is performed as a part of the quality management system used mainly in software development and maintenance projects. OAT is also known as Acceptance into Service Testing [AIS] and Operational Readiness Testing[ORT].

Compare Business Acceptance Testing and User Acceptance Testing

BAT and UAT are often ended up with the interchangeable usage of methods. So, here a study of the actual usage of both the testing forms with the detailed description.

Business Acceptance Testing

BAT is directly related to an organization’s mission, goal, and objective, known as the Business Requirements[BR].The Business Analysts makes a study on these requirements, manual processing, and usability. BAT covers all the methods used in UAT and verifies the Business requirement study and compare the existing documents with the current status of the product.

Even if the product meets all its technical requirements and functionalities, the changes
in the marketing circumstances and plans for the software implementation will affect the
Business Acceptance.This will depend on the business strategy and the circumstances
of the organization.

Bussiness Acceptance Testing

User Acceptance Testing

UAT is focused on the user/user group’s requirements. This could be in the form of additional functionalities or special needs which may have the direct or indirect impact on other areas.While checking the basic functionalities the UAT will also consider the user-friendliness of the software.

For example, when a Country Name has selected all the combo box fields below the Country like State, City etc…should be auto-filled with the corresponding states and cities under the Selected country, from which the user can make the selections.

Acceptance Testing Example

UAT is also used to validate the requirements of the solutions expected.

User Acceptance Testing

How to do User Acceptance Testing in a right way?

The UAT is the Acceptance Testing phase is considered as the last phase of the Testing process, which ensures the software handle all the real-time specification in the requirement documents. In effect the Acceptance tester should check for the following questions:

  • Does the Application take minimum time for execution?
  • Does the Application have any possibility to crash?
  • Does the application accept all the expected inputs and results in the perfect output?
  • Does the application consume the minimum amount of resources?
  • Does the Application take the minimum loading time?
  • Does the application behave exactly as what the user expects?
  • Does the application end up the operation at the time when the user stops?
  • Does the application show any security issues when it operates?

The list of the questions will be long depending on the Application nature and
behaviour.

Acceptance Testing Frameworks

When consider the Acceptance Testing there raise the question of finding some tools to avoid the redundancy in the test process.

There is a list of Acceptance testing tools ensures the ease of use.

  • Robot Framework
  • Usersnap
  • QASymphony
  • EngageUAT

These all are some of the testing frameworks which can be selected for an easy-to-use tabular test data syntax, creating test cases, readable test result output and better 
analyzing the results. The selection should be done by analyzing the features of the frameworks and the basic requirements and functionalities of the application we are anticipating to test.

Conclusion

The Acceptance Testing is the process which always aims to the satisfaction of the end users and, of course, the user friendliness. Any software products/web application will seem perfect in performance and presentation when it looks through the eyes of a programmer/application developer. But the main thing to be considered is the delivery process in which when a customer sees the product and should be satisfied with what he is delivered.

This satisfaction of the end user can be achieved by the Acceptance Testing methods designed and developed by Test engineers. The importance of the final stage of testing is that it checks to find out the challenges comes in User Acceptance testing when compared to the Business requirements. This ensures the Acceptance of the Software/Product.

About the author

Meera Sandeep author

2 Comments

Eliza

October 3, 2016 at 8:07 pm

Its great initiative and very helpful for freshers to understand testing concept in detail…..

Satinder

October 27, 2016 at 8:07 pm

thanks waiting for the next article….awesome initiative

Leave a Reply

Your email address will not be published.