How To Handle Intermittent Automated Test Failures

For enterprise test management professionals everywhere, automation testing has been an absolute boon to operations. By eliminating redundant oversight and testing efforts, automation ensures that code is adequately going through the test management system with as little manual effort as possible. A code once, test many times mentality helps to better guarantee software’s final quality in a fraction of the time.

But, in order for automation to be successful in enterprise test management, the scripts need to run perfectly all the time. Nevertheless, as any test case management pro knows, nothing is ever perfect. While it’s a rare occurrence, sometimes an automated test case management system fails to function properly. This can dramatically slow down operations and prevent teams from releasing code on time.

However, by addressing these three points when faced with an automated test failure, teams can move past the issue and right the ship again.

1) Determine why the failure occurred

If and when problems arise with automation, it’s critical to determine what precisely went wrong. Did the test case tool malfunction, were the tests themselves at fault, or was the source of the issue something else entirely? Only by getting to the root of the problem can an effective solution ever be put in place later on.

2) Make sure automation is correctly applied

One possible explanation for an automated test failure is that a test was automated even though it should not have been. While automation can bring a lot of benefits, it is not a panacea. In fact, there are many use cases in which automation is the entirely wrong approach to take. For example, while it’s often a great idea to automate load testing, user experience testing should be executed manually.

Before assigning blame to a script or test case management tool, first make sure that automation was correctly applied. Sometimes, righting the ship is as easy as not applying automation tools to a certain area that used to get it.

“It does not make sense to use automated testing tools if, during analysis, it is found that the time needed to create, maintain and run the scripts exceeds the time allotted to conduct quality testing of the application,” industry expert John Scarpino once told TechTarget. “Reviewing the rewards of cost, time and quality is again very important to look at for the creation of manual tests.”

3) Go back to the drawing board (if need be)

Sometimes, correctly solving an automated testing failure is a quick fix. But, this is not always the case. In some more rare occasions, teams may have to totally rethink the entire development process to address the issue.

When a major automation failure is found, it can be helpful to go all the way back to square one. For example, let’s say there is a dramatic shift in end-user expectations for software. In such an instance, what automated tests were used for may no longer apply. But, by resetting expectations with users and even establishing new quality assurance metrics, teams can make sure everyone is back on the same page again. This will require a lot of work and even the creation of new automated testing scripts, but it may be necessary in certain instances.

While automation can be great for so many test case management tasks, it is still prone to the occasional failure. When faced with this scenario, software engineers need to get to the root of the problem in order to effectively solve it. Sometimes, addressing such a failure will require a total reshaping of the work. But, by taking the time to do this and by adopting a robust enterprise test management solution like Zephyr for JIRA, teams can get things rolling again after an automation failure.

 What happens when automation goes awry?

Sanjay Zalavadia
As the VP of Client Service for Zephyr, Sanjay brings over 15 years of leadership experience in IT and Technical Support Services. Throughout his career, Sanjay has successfully established and grown premier IT and Support Services teams across multiple geographies for both large and small companies. Most recently, he was Associate Vice President at Patni Computers (NYSE: PTI) responsible for the Telecoms IT Managed Services Practice where he established IT Operations teams supporting Virgin Mobile, ESPN Mobile, Disney Mobile and Carphone Warehouse. Prior to this Sanjay was responsible for Global Technical Support at Bay Networks, a leading routing and switching vendor, which was acquired by Nortel. Sanjay has also held management positions in Support Service organizations at start-up Silicon Valley Networks, a vendor of Test Management software, and SynOptics.