Test automation is not about removing manual testers but to make use of their time better. It is possible to automate testing completely, and it has to be a mix of expertise from manual testers and automation testers. If you have decided to automate testing, below are some practical tips for implementing any test automation initiative:
- Focus on the Framework/methodology and not the tool
A clearly defined automation framework/methodology that covers how the automation process will be conducted can eliminate most of the frustrations associated with automation by providing stakeholders with an upfront understanding. This would provide a fair idea on what is needed to automate tests, which includes tool selection as well as the rest of the automation process.
- Choose tools that are scalable to meet future needs
Ensure that the tools can be customized to your needs and address the following: reusability, scalability, maintainability, visibility, measurability and manageability. Also, look at the support each tool has for scripting in different languages, where there are strengths available internally. Otherwise, you will need to organize an appropriate program that trains the team on the selected tools.
Keep in mind that no single tool will satisfy all the requirements; so choose a tool that meets the majority of the evaluation criteria.
- Perform a POC using the selected tool
Even if the tool appears to satisfy the evaluation criteria, it is advised to conduct a few test scenarios using the tool. Proof of concept (POC) should be done in such a way that the test scenarios cover an end to end business scenario, most of the controls and a few common features. POCs can be done with the evaluation versions of most tools and hence it is a fairly easier option to do.
- Test automation should not lead test design
Test design must be kept independent of test automation and they form the input for the automation discipline and not the other way around. Essentially, quality is the prerogative of the QA function and it has to be in control without worrying about the automation function and the problems faced by the automation team.
- Expect reasonable ROI
Test automation requires substantial investments upfront in terms of tool licenses(commercial) and creating automation scripts. It should be clear to all stakeholders that it will take time to see a defined return on these investments. However, there are intangibles such as improved quality and increased test coverage that can be observed in the short-term.
- Look outside your organization for expertise
Instead of quickly building a team ground up, seek a 3rd party with the necessary expertise to manage automation for you initially. Through outsourcing, you can build capabilities internally over time and transition the testing in alignment with your overall organizational goals.