Every software development company test their products, yet delivered product is not perfect always. Test Engineers need to catch defect before the product is released, it is not possible to retest multiple time with even best manual testing process.
Manual testing is performed by a human sitting in front of a computer carefully executing the steps. The tester perform end user role and verifies if all the features are working properly or not. Actually, Manual Testing is a basic type of testing in the application under test. This process is required certain time to understand requirement, create test cases, execute test case and document it, yet the process is one time testing. In feature once the application integrated with new apps and added new feature, as a tester the functionality need to be retested as a part of integration testing. This will require retest all existing feature and will cost company more resources and time.
Automation testing is using software tool to execute your test case. For automation, there is one time process applied, understand requirement, create test cases, coding, execute and adding test case to regression suit. Once test case is running, it can be repeated and it can be extended to perform task impossible with manual testing. That’s the most important point for Automation Testing. With Continues Integration (CI/CD), Automated test case can be repeated with zero human interact until find defect.
To fully understand why test automation is very important, we can look in to bank example. Banks everyday add new features and start new project for best client experience and security issues, therefore it needs to be very carefully test. Adding new feature software can behavior very different and cost institution millions. To prevent defect and delivered bug free product, always repeat existing test case.