Software Testing is necessary because anyone can make mistakes, some of those are unimportant, but some of them are blocking, expensive or dangerous. We need to check everything if we develop an application. Since we assume that our work may have mistakes, hence we all need to check our own work. If a developer or designer can check his own work, the issue might be skipped as because he done it by his own. To overcome this, we should get someone else to check our work because another person is more likely to spot the flaws. There are several reasons which clearly tell us that why software testing is important and here below are the major types of testing which are followed by Maco Infotech Ltd in its testing services for any product or application.