We are often asked by clients in “getting started with software test automation”. In doing so, we’ve come up with 3 rules of the road that we use in all of our test automation projects:
Set expectations and goals: One of the first things that usually comes out is that the client wants 80% automation in 5 months. Of course 80% and 5 months can sometimes vary, but not by much! Firstly, we could probably get there, or close if all we did was record and playback. But then we would end up with no reusable components and scripts that break with the slightest modification to the client’s software. So we first start with a short period where we time box a prototype framework with a small set of scripts. This way, we learn the client’s software and also demonstrate the framework, its advantages and a plan for developing future scripts.
Select the right areas for automation: This is highly dependent on the maturity of the software, and the existing testing that is taking place. If they already have manual test cases, many times they want us to directly convert manual test cases to automated scripts. This works for a while, but manual test cases are not often designed with programming in mind, so there is often not a reuse mindset employed when developing them. The main factors to consider here are 1. developing automation for mature areas of the software, re-use and parameterization, and adaptability of the scripts for additional functionality of the software. Just converting manual scripts ignores these important elements.
Select the right tool: Selecting the right tool for the situation is critical. Not all tools can recognize the objects of the client’s software. And the choice of tool is also dependent on the client’s skills and time. Some tools may require programming skills and be very flexible to maintain, but if the client does not have those skills then we’ll end up with a bunch of automation scripts and a framework that is not used.
In the end, we need to work closely with our clients to make sure that they don’t expect automation to be like magic. Surely, it can help a TON, but it does take time, and needs to be applied smartly. “Getting started with software test automation” requires using one foot at a time. We listed out 3 important steps here, get our white paper for a more complete list of practices.