User Acceptance Testing(UAT) in Software Testing
Introduction
UAT is an user acceptance testing in which it is an comes under a environments of testing this testing helps us to better understanding of how actual testing is done under different types of environments.
Each and every environment having there own importance and there different role to performing the testing.
Every environment give there best to delivery the best quality of product or application to customer.Also in UAT there is a major role of apla and beta testing this also we see in this tutorial.
In environment testing there are total four environment DIT,SIT, and UAT and production testing environment so in this tutorial we see in detail this all environments.
What is Environment in software testing?
Environment in is define as the "Environments under which all over testing process are working "
Environments in testing is the process in which four types of testing environment are detaily explain how each and every stage is working.
Following are the four Environments in Software Testing
Testing process is not just related to testing team but in this process all over team is involve.
Each and every team member are working or completing there testing process and this process are done under there specific testing environments.
These four different types of environment we see in detail.
1.Developer Independent Testing (DIT)
Developer independent testing involve developers this is basically a coding testing process.Client give his all requirements to the BA(Business analyst).
After receiving all the requirements from the client BA prepared the documents which called BRS and SRS document.In this documents all requirements are detaily explain.
On the basis of this requirement developer do coding here and after that developer does the unit testing to prevent the future error.
Under DIT environment developer perform unit testing find out the error in his own coding and fix it before sending build to the SIT.
DIT developer review his coding again and again and find out the error in his own coding.Unit testing we also called white box testing were developer see all the internal process or his own coding.
After completing the unit testing developer send the build to SIT environment.
2.System Integration Testing (SIT)
System Integration Testing (SIT) test engineer are involved where testers are perform detail testing.
After receiving the build from DIT team testing team start the system integration testing in this environment.
In SIT environment tester do a detail testing perform smoke,sanity,retesting,regression testing,functional testing in detail on the build which is send by DIT.
In SIT there is an large team size because they are perform the detail testing and focus on the database testing.
In SIT testing environment required more time to perform testing by performing detail testing test engineer found the defect/bugs before sending the build to UAT team.
3.User Acceptance Testing(UAT)
User acceptance testing (UAT) is testing which test Engineer are involved who is not part of SIT.
In UAT tester test the application but in another way to find out the more defects from the application.
In UAT tester test the application in the presence of client.
In UAT tester and client are involved tester find the defect which is Miss by SIT tem and which found in UAT it is called defect leakage.
Basically in UAT tester give the preference to the new change in request and main functionality of application hence time required of testing is less.
In UAT we write a different test case on new functionality or new change in request and execute that test case to find out the bugs.
4.Production Testing
Production Testing is a defect is detected to end user when end user start using the application.
Here we say the production testing environment which tested by end user.
What is Production Issue?
When end user or customer start using the application and found the any type of issue it is called "production issue".
Production issue comes when end user start using the application.
What is Hot Fix?
When end user found defect that issue fixed we called production issue and that issue need to fixed for that there is an one team we called it CCB team.
CCB long form is change control board.This team do a impact analysis to fixed the defect.
The area of impact of defect analysis by CCB team and fixed that defect in production testing environment.
In definition "Production issue which occurs which is fixed by developer by CCB is called hot fix"
Following way CCB team fixed the defect.
1.When Defect is found to the end user.
2.Then first customer inform to the organization about the defect.
3.When that defect comes in to the organization there is an CCB team which do impact analysis and fixed that defect.
4.In the CCB team involved PO(BA), Testing team lead, Developer team lead.
5.PO (project owner) is involved because he knows the that defect causes how the impact on business of customer.
6.Then here major role of CCB team where CCB gives priority and impact of defect.
7.After the priority and impact of defect is decided the. Developer team lead infom to developer team and testing team lead infom to testing team to fix the production issue.
8.After that modified build is send to testing team then here Tester do an re-testing.
Following are the two types of UAT
1.Alpha Testing
Alpha testing is the type of UAT in UAT alpha testing is performed in the presence of developer and tester.
Alpha testing is performed under controlled environment where tester and developer performed there testing under control environment on there own PC.
2.Beta Testing
Beta testing is another type of UAT testing in which customer are present.This beta testing is performed by customer on there environment.In beta testing customer do the testing by itself.
When application send to the production after production give this application to end user in the beta version of application which a copy of real application means it is not an final version of application.
Here this application use by the customer on there environment if any bug or issue found to the end user he send his defect to organization.
Likewise beta testing is performed by customer but in uncontrolled environment.
Following are The Difference Between SIT and UAT
SIT
1.SIT(System Integration Testing) client is not involve.
2.SIT main aim to focus on database testing.
3.SIT Performed testing like smoke,sanity,retesing,fuctional testing,regression testing.
4.SIT require more time for testing.
5.Hence,team size is more in SIT.
UAT
1.UAT(User Acceptance Testing) client is involve.
2.UAT is more focus on UI (Front End).
3.UAT focused on the main functionality of application and the new change in functionality of application.
4.UAT require less time for testing due to focusing on only main functionality of application.
5.Hence,team size is less in UAT.