It depends on which development methodology is being used, test automation can be initiated accordingly. In Agile software development, Automation starts in initial phase itself.
before i going into depth first we will for which type of project we should do automation.
- When the product is valuable enough to the company.
- When the product life cycle is long enough.
- Minimize Test Execution time, Test Coverage and consistent results.
There are several approaches for test automation in Agile and its varies from Agile flavors to flavors. Any software development methodology gives importance to the Unit testing, Unit testing first step of Test Automation. usually Unit tests are linked to the build system or sometimes it links to repository when Developer checked in the code, Unit tests in that area gets executed. Unit testing is most important in Agile software development. so when we start writing code and unit test we can start test automation. this is about the White box testing. now what about black box automation? when we should start it?
Typically black box testing starts when some workflow has been implemented. without UI implementation it is not advisable to go for black box automation, otherwise automation team will end up with lot of rework. but during that time Automation team can create the framework and understand the upcoming workflow so that they can be ready with test data and framework.
if you are in Agile development, make sure that your automation framework should much flexible and it can accommodate the changes in the same sprint. soon i am going to post another article on automation framework in more details.