Testing Services provides a platform for QA professionals to discuss and gain insights in to the business value delivered by testing, the best practices and processes that drive it and the emergence of new technologies that will shape the future of this profession.

« Future demands testers to broaden their areas of expertise | Main | Communicating the value delivered by testing - An organizational necessity »

Key Challenges in Test Automation

One of the questions I encounter frequently is, 'Do we need test automation?' The answer is not always a YES. In some cases, the challenges outweigh the benefits. The knack lies in identifying the right candidates for automation. Test automation is meant for reducing the test execution effort by automatically executing the test cases. Sounds simple, doesn't it? Hang on! In reality, this is a herculean task with many obstacles.

In order to automatically execute the test cases we need to put in lot of effort to create the automation scripts using a suitable tool. So, here comes the foremost challenge of choosing the right tool for test automation. Based on my experience, there is no single tool which fits all applications. We need to consider the application technology, custom controls used, ease of use of the tool, cost of the tool, support from tool vendor, etc. before we can zero in on the test automation tool to be used.

The second challenge is to decide on what to automate. Typically the tests that need to be run frequently are the ideal candidates for automation. Build acceptance tests, tests that need to be tested for different sets of data, tests that require a great deal of precision, which is difficult to achieve with manual testing, and tests which do not require any manual intervention such as plugging a new hardware or inserting a card, etc. can be considered for automation. It is better to start with low hanging fruits.


The third challenge is to determine a suitable framework for automation. The scope of the testing, need of testing, type of functionalities to be tested and kind of actions to be performed, type of validations, etc. will determine the suitable framework. The framework chosen should be such that it enables even the manual tester to execute automation scripts. Maintainability, Reliability and Performance are the key factors that will play a major role in designing a custom framework. The framework should aid in reducing the maintenance effort. Even if the control properties of the application changes, the effort required for updating the script should be minimal. The framework should aid in reporting reliable test results and should be robust enough to handle the un-predicted events that may occur during the test execution. The framework should have the capability to run the tests in parallel and also aid in executing more number of tests in short span of time.

I will discuss more about each of these in my upcoming blogs. Keep watching this space for my next blogs to overcome your automation challenges.


I am planning to introduce automation in my organization. I have lot of resistance from the testing team for doing so. What is your advice for me.


Post a comment

(If you haven't left a comment here before, you may need to be approved by the site owner before your comment will appear. Until then, it won't appear on the entry. Thanks for waiting.)

Please key in the two words you see in the box to validate your identity as an authentic user and reduce spam.