Improved efficiency, enhanced quality, faster delivery, and a better ROI – are the results of effective test automation. Indeed 88% of World Quality Report (WQR) respondents who are using automation have seen a significant reduction in test cycle times with automation, and 84% have benefited from cost reductions. So if automation has such potential, why does the WQR also reveal the proportion of automated test cases in the UK, standing at 42%, is 3% lower than the global average?
At Sogeti some of the most common questions we hear from our clients are: What are the main barriers to automation and how do we overcome them? What constitutes a higher quality delivery of automation? What are the dependencies for successful automation? How can we address technical debt in our regression suites?
Let’s Face it Automation isn’t Easy
One reason behind these uncertainties is that when adopting an automation strategy many businesses assume test automation, once set up, and means that they can test ad infinitum with little or no effort – as if on autopilot – but this simply isn’t the case. With the increasing speed and magnitude of changes in functionality automated scripts will require constant maintenance, otherwise they risk becoming increasingly redundant as the product transforms. Effective automation also requires a more agile way of thinking and this can therefore be a major business disruptor before you start to see the benefits. Not all testers have specialist automation or scripting skills, which is another major requirement for success. Developers are achieving continuous delivery through continuous integration, continuous deployment and the emergence of DevOps disciplines, but this speed of delivery can come at the cost of quality, and lead to reputational damage if your testers are not working in the same way and at the same speed as your developers.
Shift Left to Get it Right
Initially introducing automation into small projects and ensuring testers are trained in scripting will get you off to a good start. However the real game-changer is to adopt an approach to development which integrates testing. This not only shifts testing left, and therefore increases quality (or risk-reduction), but incorporates thinking about and creating test and automation strategies as an integral part of the development process from the very outset of the project. This test-first approach stabilises the underlying manual test strategy, gives clarity on what to test and when, and reveals what can be legitimately automated. Bugs can then be found and fixed in the script development stage as opposed to later on in the regression suite, reducing overall technical debt and ensuring a higher quality output. This requires a very high degree of collaboration and understanding between your test and development teams, with developers, end-users, and testers all contributing to the test automation strategy. The other crucial factor is to realise that automation is not “automation forever”; “autopilot” mode will not lead to automation success. As the software develops the automated tests will need to monitored, re-evaluated and changed to ensure automation remains effective.
So this is an overview of the right approach to automation but to really implement it effectively we need to take a deeper dive into the barriers, the solutions, and how to achieve Test-Driven and Behaviour-Driven Development, and how to alleviate technical debt. To help you achieve this we’re hosting a webinar on 28th July at 3.30pm BST entitled “Increasing the Efficiency, Productivity and Overall Quality of Your Test Automation”. If you are keen to get more value from your test automation strategy then you can register for this webinar here.