This is called Software testing where the applications are verified of bugs, performance problems and security threats prior to release. Basic It entails test planning, test cases, manual and automated testing and bug reporting. The reason is that it allows seeing quality, user experience improvement, diminution of failures and saves on time and expenses in the long-term perspective.