So you have decided upon a strategy, figured out what you were going to get out of it, determined if it was worth it, and finally built your team. So what’s next? Disneyland! Yeah, not so much. Now come the hard parts, beginning with figuring out when you should be starting your automation trek.
Each environment is different, and as such, you should be tailoring the start of your automation initiative to account for these differences. If you have a small, highly focused, highly agile team, you will probably want to start automating the day the first line of code is written. On the flip-side of that, if you have a large team, with a lot of interdependencies, and a lot more changes, you will probably want to wait until later in the process when things are in a more stable state. Your overall automation strategy is going to play a part in this as well, so be sure to keep that in mind. If you are wanting to deliver automation that can be used in a continuous deployment type of environment, that is a vastly different approach then primarily doing automation for regression purposes. This is one of those instances where you should work with your automation lead to figure out the best time for him and his team to start picking things up to automate.
The one thing you can do above all else is be realistic. If you are starting this initiative after development has been going on for a period of time, don’t expect immediate results. Automation is a very costly game to get into, and while it can pay off big down the road, you definitely have to ante up just to get in the game. This is true for both the financial side of things, as well as the time side. Someone told me that you can’t make a baby in 1 month with different 9 women, but rather you need the full 9 months from a single person. Automation is a lot like this, in that you can’t just throw bodies at it…there is a time component that will not go away no matter what you do. The best thing you can do is understand this, and support your team while they are getting under way.