When we deploy an application from staging / testing server to live / production environment, tester needs to test the application again in production environment no matter if he has already tested the whole application in staging environment.
Why there is a need to do testing in production environment? Some reasons are given below :
- Differences between the data :
In production environment we have live customer data but in staging testing is generally done with test data, so the testing results can vary with data.
- Deployment Issues :
When deploying the code to production environment sometimes configuration settings, DB settings, property values etc may vary so testing in production can reveal different results than expected.
- Self Satisfaction :
It is always a probability that QA engineer missed to test a scenario on staging environment, so that may get covered in real time environment with live data. It will also boost the confidence of entire team if product works well in production.
- Payment Gateway :
If you have integrated payment gateway in your application and client wants to test the payments with live cards in production that makes another strong case to test in production.