Home > Ask the Software Quality Experts > Software Testing and Quality Assurance Questions & Answers > Building automated tests for legacy applications
Ask The Software Quality Expert: Questions & Answers
EMAIL THIS

Building automated tests for legacy applications

Karen N. Johnson EXPERT RESPONSE FROM: Karen N. Johnson

Pose a Question
Other Software Quality Categories
Meet all Software Quality Experts
Become an Expert for this site


Software quality news and advice
Digg This!    StumbleUpon Toolbar StumbleUpon    Bookmark with Delicious Del.icio.us    Add to Google


>
QUESTION POSED ON: 21 May 2008
We use the TestFrame approach for testing our financial services messaging application which is on legacy HP tandem. Currently the test ware build is ON with manual design of test clusters but later on intend to progress towards automation. For this typical legacy application, what could be the automation challenges? Could we use current manual test clusters for future automation input? Currently the manual testers are not able to foresee the navigation requirements and challenges and fear huge rework.

>

Your specific environment and tools are unfamiliar to me. I'll reply to a more generic version of this question which I see as, "We have a legacy application that we would like to build automation for. What are the advantages and disadvantages? And also, can current manual tests be used to build future automation tests?"

Building automation for a legacy application has the advantage of the user interface most likely being settled and unlikely to be updated -- at least not updated significantly. If the test automation tool you are using relies on the user interface to navigate tests, then this is a considerable advantage. The other advantage with a stable user interface is that you and your team can work on the automation intermittently as time permits versus the automation frenzy and rework that sometimes takes place on applications still heavily under development and/or frequent releases.

The disadvantage of automating a legacy application is that if the user interface uses custom controls or has other interesting application quirks; it can be harder to solicit help from a team who may have moved onto focus on more current efforts. It might also be the case that if the application is older and the technology it relies on is older; you may no longer have developers on staff that can assist with challenges that may come your way. In my experience, the hardest aspect of working on legacy applications is psychological and technical. The psychological factor is that once an application is old and is no longer a primary focus of a team, getting and using resources becomes difficult; people want to work on new applications. The technical factor is that people want to work with the most current technology they can (this is often, but not always, the case as some people prefer the comfort of technology they know). You may find as a test lead or manager working with a legacy application that much of your efforts will be centered around inspiring people to continue work on the old.

As to the second part of your question, manual tests are often used as the foundation to building an automated test. Instead of trying to automate manual tests, I think it's more advantageous to look at the automation tool you're working with and the application and look to automate tests that fall into the following areas:

  • Tests that require extensive manual effort.


  • Tests where the result of pass and fail isn't arbitrary.


  • Tests that are best executed with volumes of data -- such as search testing or creating new items where the manual labor to execute the tests is considerable and the advantage of having run "many" tests with different data has a benefit.


  • Tests that use the automation tool for what you discover the tool is best suited to. Every tool has its advantages -- use the tool to do what the tool is best at. This may or may not always match what you wish the tool could do.

Software testing resources:
How to thoroughly test a website without automated tools

From manual tester to automated tester

Automated software testing: The role of a test engineer

Fearing rework to automation is an intelligent worry. Rework is time consuming. Planning automation where each script or component is a small slice that can be used by many scripts is a strategy that has been true for a long while and I would suspect may always be the case. For example, rather than write a test automation script where a user logs in, executes an action and then logs out -- these actions can be built in three separate automation scripts. There is nothing new about this strategy but that doesn't make the strategy less appealing. When you brainstorm with your team about building automation, I would suggest always thinking about how to build scripts that will be less susceptible to change and favor small component scripts whenever feasible.


Digg This!    StumbleUpon Toolbar StumbleUpon    Bookmark with Delicious Del.icio.us    Add to Google



RELATED CONTENT
Automated software testing
Agility and automation mark new application development and QA tools
Recording and running software load tests with JMeter
ThoughtWorks Studios' Mingle captures "murmurs" and "waves" around project
Accelerating Agile testing with computer assistance
Improving software testing productivity using record-playback
Using automation to speed up software testing in Agile
Software consortium seeks standard quality metrics
Software testers facing six big challenges today, StarWest keynoter says
Affordable automated testing tools for securing websites
Classic inspiration for modern software test problems in QA

Software testing and quality assurance (QA) fundamentals
How to deal with iteration issues in Agile
Five steps to fostering better software tester and QA results
Software Testing: New software testing technologies bring new challenges
Testing strategies for complex environments
Astronaut's STPCon advice: Teamwork delivers "The Right Stuff"
How to make your software tamperproof
Software consortium seeks standard quality metrics
Demo: Using WebGoat, a free software testing tool
Seven steps for a quality change and configuration management program
Winning responses to "Why is QA always the bottleneck?"

Software Testing and Quality Assurance
Why do performance testers write new scripts so often?
How to create performance testing workload models
Fixing Web application performance troubleshooting problems
Expert advises on implementation of Selenium IDE for effective software testing
When should regression testing occur in an automated test plan?
Achieving peak performance in integration testing
Getting answers about OpenSTA script problems
Defining core software regression tests
Breaking in functionality on UI application pages
Where to find good methodology guides for software testing

RELATED GLOSSARY TERMS
Terms from Whatis.com − the technology online dictionary
automated test equipment  (SearchSoftwareQuality.com)

RELATED RESOURCES
2020software.com, trial software downloads for accounting software, ERP software, CRM software and business software systems
Search Bitpipe.com for the latest white papers and business webcasts
Whatis.com, the online computer dictionary



Search and Browse the Expert Answer Center
Search and browse more than 25,000 question and answer pairs from more than 250 TechTarget industry experts.
Browse our Expert Advice



Software Quality - Software Maintenance, Software Requirements, Software Standards
About Us  |  Contact Us  |  For Advertisers  |  For Business Partners  |  Site Index  |  RSS
SEARCH 
TechTarget provides technology professionals with the information they need to perform their jobs - from developing strategy, to making cost-effective purchase decisions and managing their organizations' technology projects - with its network of technology-specific websites, events and online magazines.

TechTarget Corporate Web Site  |  Media Kits  |  Site Map




All Rights Reserved, Copyright 2006 - 2009, TechTarget | Read our Privacy Policy
  TechTarget - The IT Media ROI Experts