1. We do automation testing when the nature of testing is repetitive or when project is large.Testing a part of application again and again lead to frustration. Doing manual testing in this kind of repetitive test cases will lead to high consumption of both cost and time.There are certain actions that are difficult to do manually. For example? Low level interface regression testing. Through Automation it is much better to find errors for this kind of testing.
2. Another advantage of automation testing over manual testing is performance testing on web application such as how much load a web application or system can take at a time and response time of a system. System or web application should be able to handle thousands of users accessing a server at a time which is impossible through manual testing.
3. You can rerun all of the required tests cases instantly in Automation as the tests are already set up. This isn't the case with manual testing.
4. Basically Automation is the best way to increase the speed, effectiveness, efficiency and coverage of your software testing.