what is acceptance testing


It is and end-to-end testing done by the enduser or customer where in they use the software for real business for some particular period of time and check whether software can handle real time business situation or not this is what is acceptance testing.

In the below video you can get to know how we can do acceptance testing


How acceptance testing works in the real time

what is acceptance testing

Let us take an example of citibank. Suppose citibank is a customer and want to develop an application for his banking business suppose he is having requirement (A-Z) module. He will communicate to a software development company take an example like wipro.

Then customer (Citibank) will give requirement to company (wipro). Company will follow any one Software development life cycle (SDLC) model according to that first Business Analyst from company will do requirement collection for module (A,B,C,D) then they will do feasibility study and decide whether to take the project or not.

After that if they decide to take up the project then architect will do design (Both HLD and LLD) for (A,B,C,D) module then developer will write the code and do white box testing and make a build for module 'A'.

This Build will be given to test engineer and they will start with smoke testing then Functional Testing and if they get defect then they will communicate to developer and then developer will fix the defect and give new build test engineer will again test the new build.

Later developer will give 2nd Build this time test engineer will do smoke testing ,functional testing and then Integration Testing parallely developers will develop new module when the development is done developer will give 3rd build to test engineer till then test engineers would have finish testing 2nd build now they will start testing 3rd build.

Like this the development and testing process continue when developer gives 4th build then test engineer will do smoke testing, functional testing, integration testing and then System Testing and also all the other testings.

After completion of all the testing they will freeze the requirement and do all type of testing for 4-5 cycle and when the quality of the software is good then they release the software to customer.

Then customers do the acceptance testing to get the confidence on the software before deploying the software into the production server.

Till now whatever the process I explained this is a part of 1st Release. like this there will be many release in the company. In every release company develop different different module.
Every release time period is different and also every release has different names. As you can see in the above diagram.

There are five different case to do acceptance testing

Case 1:

what is acceptance testing

According to the above diagram in first case once after software is given to customer in order to get confidence on the software IT (Information Technology) Engineer or Test Engineer present in the customer place will use software for real business for some particular period of time by doing acceptance testing. Once after acceptance testing is completed then only software will be deployed into production server.

Case 2:

what is acceptance testing

According to case 2 as you can see in the above diagram once after software is given to customer IT Engineer present in customer place will select some of the agents who are domain experts (The person who is having more than 6-7 year experience in a particular domain) and ask them to use software for real business for some particular period of time. So if we observe here agents present in the customer place is involved in doing acceptance testing.

Case 3:

what is acceptance testing

According to case 3 as you can see in the above diagram customer will ask company to send some test engineer to customer place for acceptance testing. Test Engineer from company will travel to customer place and by looking into the business document they will do acceptance testing. This case is followed by approximately 70% of the company.

Case 4:

what is acceptance testing

According to the case 4 as you can see in the above diagram customer will travel to company along with business document and then they sit with the testing team give them the business document and ask testing team to look into business document and do acceptance testing.

Case 5:

what is acceptance testing

According to the case 5 as you can see in the above diagram here customer will give software to his customer and tell them to use the software for some particular period of time and tell them to give the feedback about the software. This is how customer will do acceptance testing.

These are the five different case to do acceptance testing are mentioned above. Customer will choose any one of the process to do acceptance testing.

Types of Acceptance Testing

1. Operational Acceptance Testing: It is done by IT Engineer or system admin in different operating systems.
2. Contract Acceptance Testing: Here acceptance will be done based on contract period.
3. User Acceptance Testing: It is done by end users wherein they use software for real business.
4. Compliance Acceptance Testing: Here acceptance testing will be done to check whether software meets all the government rules and regulation and legal and safety policies.
5. Beta Testing: It is done by end users for the beta version or trial version of the software and give the feedback to company.

Why customer should do acceptance testing

1. To get the confidence on the software.
2. To make sure that software meets business requirements.
3. To make sure that company is not developing any wrong features.
4. Chances are there under business pressure company might miss some defect so customer will do acceptance testing.

What is difference between test engineer present in company and customer place

Test engineer from company will look into requirement and do functional testing, integration testing and rest of the testing. While understanding requirement test engineer will understand the requirement in right way and sometimes in wrong way but still they will do functional, integration and rest of the testing based on their understanding.

Test engineer from customer place is a domain expert, he understands the business very well.He will test the software for real time customer data, he is a person who gives the requirement.

Why builds or test cycle will be more in customer place while doing acceptance testing

1. When quality software is not given to customer.
2. When customer given requirements are not clear then customer will change the requirement.
3. While doing acceptance testing if customer gets new ideas then customer will give the requirement to the company.
Previous
Next Post »