Manage Learn to apply best practices and optimize your operations.

Seven ways to know when to automate testing

Everyone wants automation, but knowing when to automate testing is the trick. Expert John Scarpino gives you seven questions to ask.

Automation. The word leads us to think of efficiency, return on investment, ways to cut expenses and methods to...

bring high-quality products to market faster. The test automation process sells itself to a buyer due to the word's connotation, as just described.

However, when "automation" is used in regard to software testing, it needs to be taken a little differently. Knowing when to automate testing is a very strategic process and needs to be managed by an experienced testing team.

In business, where results are expected yesterday, upper management is quick to point blame at the software testing team when a project is behind schedule. Comments like these are heard in daily status meetings: Why isn't this software/process automated? If it were automated, testing would go much more quickly. We must automate it as soon as possible.

If only it were so simple. Is test automation what is needed in situations like these? Or, is more thorough planning, less wasted time, and more knowledgeable resources what is truly needed?

I've learned that last-minute calls for automation are akin to a Hail Mary play in football. Most of the resources and time for the project have already been exhausted and management is looking for a quick fix to get it back on schedule. By the time the project rolls around to the software testing team, it is already so far behind (usually due to glitches in development and business requirements) that no amount of automation can make up the time lost. In addition, there is a lack of understanding within upper management about how test automation works and the preparation required to set it up. To be sure, the software test manager does not make any friends in management when he must tell them automation cannot be done when they want it done.

Automation can be quite valuable if planned in advance and implemented correctly; but automating a test process will create value only for a functionality that requires minimal change. This includes the functions of a software application that has completed the development lifecycle, have been fully tested, and the results of which have been approved by the organization's subject matter experts. However, if these areas require any coding change, then automation will need to be reapplied.

As software test engineers, we must educate our managers (and in some cases, our own peers) about when to automate testing and how it works. Here is a quick list of considerations about when to automate testing that you can present to management when a project begins, to ensure that everyone knows what to expect:

  1. Is the development code stable?
  2. Has functionality of the application been accepted and fully signed off on?
  3. Has the test automation tool been fully understood, and is it capable of being used successfully for test automation? Has a proof of concept test been done?
  4. Is there a development plan in place, to understand when development will be completed and when automation can begin?
  5. Who will be writing the automation scripts? If the testers who execute the manual tests are the same testers who create automation tests, will this negate the productivity of utilizing these resources?
  6. Is there a maintenance plan for how after-testing is to be completed, to focus on automation areas?
  7. How well does the project team know the software vendor, and the software testing industry?

Next Steps

Automated software testing basics

Manual versus automated software testing

Four reasons projects fail

This was last published in September 2015

Dig Deeper on Automated Software Testing

PRO+

Content

Find more PRO+ content and other member only offers, here.

Join the conversation

7 comments

Send me notifications when other members comment.

By submitting you agree to receive email from TechTarget and its partners. If you reside outside of the United States, you consent to having your personal data transferred to and processed in the United States. Privacy

Please create a username to comment.

What do you say when managers just want to automate everything?
Cancel
How about... so when do we automate away your job.... and then when they give the logical objection, and talk about the need for human control in decision making, tell them, the same applies to your testers.  
Cancel
Oh, so many, oh so easy.... 

"So, where are you working next...?"

"Agreed. Let's start with your job."

"If I'm automated out of my job, can I get early retirement...?

"Great question, boss, but I'm gonna need lots a time to work on just the right solution. Let's see, uhm, er...."
Cancel
Oh my gosh, I love these answers! I'll have to tuck them away in the back of my mind. Not that I would ever be brave enough to say these things, but I would have love to hear someone say this to one of our last couple of CIO's that had the "automate everything" attitude (they're both gone now). 
Cancel
In my experience, people may have a need to fulfill the official request even though they understand the absurdity of it. Then some work is done and success is reported. It's a real challenge to break such illusion!
Once a client told me: we automated all tests, you just need to make them working. Heh.
Cancel
If we automate everything what / who are you going to manage?
If they automated system goes down for some reason, can you fix it?

Call the automated help desk for support
1 for English, 2 for Spanish, 3 for Binary....
Cancel
I am not sure I buy the 'everyone wants' argument at the start of the article.

However, there are two things I disagree with.

1. Test Automation is not Testing software via automation.  It is at minimal checking, and it will never have that emergent aha that's different moment, except to the things upon which it acts and asserts.  It does not replace testers or tester's time, if anything it adds more overhead to a project.
2. If one is going to do it, waiting for stability is too late to start.   Look there are places where checking via automated checks does help and is fairly useful, but should fall to the developers not testers to writee generally (I speak of unit checks).

I also feel it focuses on Commercial tools too much.  Automation does not require any special high cost tools.  You can use them of course, but buyer beware.
Cancel

-ADS BY GOOGLE

SearchMicroservices

TheServerSide.com

SearchCloudApplications

SearchAWS

SearchBusinessAnalytics

SearchFinancialApplications

SearchHealthIT

DevOpsAgenda

Close