How do we identify which areas are to be automated in a project?
What are things we should look into in the project and the factors to be considered ?
Please explain in brief.
1. In case of regression testing one require to automated them to test - the areas which require continues testing again and again. ( Regression testing - where one functionality is added /or bug is fixed then to test the related functionality to that added feature and corrected feature )
2. Automation is also used in case of smoke testing, click events- functionalities, navigational pages etc.
How much effort will it take to automate certain parts of a project?
How much maintainance effort will it take?
How stable are these parts?
Answer these questions and set them in relation to how often the tests will be executed (or how fast they need to be executed) - this is the link to what Ankit has stated before.
Both factors (effort and usage) help you to determine the best candidates for automation within your project.
Any test can be automated except where human intervention is required, such as exchanging boards, etc. The question is wether or not the automated test will save time and energy for the manual testers. Automation is development and as such should not require wasted efforts on tests which are not necessary. Plus you have the added benefit of maintaining the automated tests. This I usually allow for with 20% of all automation efforts.
If you automate trash you will just have faster and repeatable trash!
Success is the ability to go from one failure to another with no loss of enthusiasm.
~ Winston Churchill ~