Post Release Testing
What is Post Release Testing?
The name itself provides the description of the post release testing, i.e. the testing activity performed after the release of the software product on the client site or in its intended or production environment or when the product has gone live.
Why Post Release Testing?
Sufficient and satisfactory amount of testing has been carried out in the test environment by the team of professional testers, then what arises the need of performing the post-release testing?
Although, the QA team with the help of needy resources and latest advanced tools have thoroughly tested the software product from all possible scenarios and subsequently validated the release of the product, but still it's a matter of fact that the testing of the application has not been performed in the real or production environment, for the purpose of which the product was developed.
Therefore, it might be possible that some points or aspects got left out while testing the application in the simulated production environment such as
- Data Differences
QA team has made sure that the software application is tested through all sort of data but still it does not guarantees that the tested application is ready for any unexpected or undesirable data value, which might occur in the product environment.
- Deployment Issues
The procedure & scenario for deploying the application in the test environment and in the product environment are different. Therefore, it might be possible that the test environment or site where the product was successfully deployed and installed to carry out testing activities, lacks in some aspects in comparison to real or production environment such as differences or issues in configuration settings, Database connectivity issues, network configuration, etc. Further, the organization who have adopted and following the manual build procedures are more prone to the deployment issues.
- Area of Impact
Sometimes wrong selection of scenarios executes and hits the wrong areas of the application instead of correct key areas and proves to baseless and useless for the real production environment.
- Unknown areas
Rarely, there exist a probability that a QA team has misses out any aspect or area of the product, but still there coverage is bound to business or user requirements and it can't be ignored that there adherence to the specified requirements may leave out key areas, which might produce greater degree of impact in the production environment.
Post Release Testing Activities
The tasks or activities carried out during the phase of post release testing generally consist of following subsequent steps:
- Post Production/Release verification
In the first step post release verification of the software product is carried out under the supervision and guidance of QA Manager or Test lead as per the need and the requirement. Test plans and cases for the post product verification are generally derived and developed from the existing test plan and cases, meant for testing the product prior to its release. Post production test plans could be prepared by any of the test engineers engaged in the project, which subsequently needs to be approved by the QA Manager or the Test Lead.
- Reporting the Verification Results along with the issues (if any) detected on the production environment.
Results of the first step i.e. post verification are reported to the client and the stakeholder for their information. Further, any issues/defects found on the production environment also needs to be reported to the stakeholders and the defect management tool, and should be taken separately from the existing bug cycle, for its root cause traceability and correction procedures.
- Cleaning up the post release test data
The test data used during the testing needs to be cleared, i.e. post release verification activity should be followed by the data clean up task.
- Monitoring (if applicable)
Thereafter, monitoring the production environment as per the necessity.
Points to remember
Below given are some of the noteworthy points, which may be considered and implemented to avoid the use of post-release testing
- Implementing the pre-release test environment for testing the product.
- Using the best suitable production data, gathered from the reliable and trustworthy sources.
- Equipping the process with the build server to avoid the inconsistency in the build.
- Manual deployment of build is more prone to the deployment issue. Therefore, build deployment process may be automated.
Further, if it is necessary to carry out the post release testing then the automation testing approach may be used to perform the testing process due to advantage of being less error prone, compare to manual approach