Building a superior test automation solution is no easy task.  It takes a lot of planning, strategizing, analyzing options, and making decisions on the front end to ensure success once it is executed by your team.  As some people might like to think, it is not a set it and forget it discipline. Yes, test automation can improve efficiencies in the short run, but as requirements change, enhancements to the software are made, or competition reduces your “time to market”, changes to your test automation scripts will need to occur and must be fast.

In this blog post, I wanted to outline five key components of what I would view as a “best in class” test automation solution. Here they are:

1. Technology Component:

  • Automation Solution – Technical solution should be easily mastered by new associates
  • API/Web Service Testing – Automation scripts cover more than just UI functionality
  • Multi-Platform – Automation scripts test end-to-end and cross platform applications

2. Continuous Integration/Continuous Deployment Component:

  • CI/CD Process – Automation Tests must be integrated in the CI/CD Process
  • Automation Support – Relatively free from continual developer intervention  
  • Speed of Delivery – Test automation keeps pace with your velocity of software changes

3. Resource Component:

  • Current Resources – Realistically evaluate if they’re capable of  achieving your goals
  • Acquiring New Talent – Easily able to find the right skilled resources for your solution
  • Retaining Talent – Consistently able to hang onto good automation experts

4. Cost Component:

  • Cost vs. Benefits – Realizing expected ROI from test automation
  • Maintenance Costs – Maintenance costs acceptably under control
  • Resource Costs – Effectively managing team size and cost of automation resources

5. Quality Component:

  • Test Coverage – Appropriately achieving or exceeding quality expectations
  • Maintenance – Test cases are easily maintained and can keep up with software changes
  • Risk Based Testing – Sufficiently covering or mitigating business risk exposure

Even if you put in practice 75-80% of these components and their subsets, you’re well on your way to a ‘best in class’ software test automation solution.