Efficient and change-resilient test automation: An industrial case study
Authors:
- 1 May 2013
- conference paper
- Published by Institute of Electrical and Electronics Engineers (IEEE)
- p. 1002-1011
Abstract
Test automation, which involves the conversion of manual test cases to executable test scripts, is necessary to carry out efficient regression testing of GUI-based applications. However, test automation takes significant investment of time and skilled effort. Moreover, it is not a one-time investment: as the application or its environment evolves, test scripts demand continuous patching. Thus, it is challenging to perform test automation in a cost-effective manner. At IBM, we developed a tool, called ATA [1], [2], to meet this challenge. ATA has novel features that are designed to lower the cost of initial test automation significantly. Moreover, ATA has the ability to patch scripts automatically for certain types of application or environment changes. How well does ATA meet its objectives in the real world? In this paper, we present a detailed case study in the context of a challenging production environment: an enterprise web application that has over 6500 manual test cases, comes in two variants, evolves frequently, and needs to be tested on multiple browsers in time-constrained and resource-constrained regression cycles. We measured how well ATA improved the efficiency in initial automation. We also evaluated the effectiveness of ATA's change-resilience along multiple dimensions: application versions, browsers, and browser versions. Our study highlights several lessons for test-automation practitioners as well as open research problems in test automation.Keywords
This publication has 9 references indexed in Scilit:
- Efficiently scripting change-resilient tests2012
- Automating test automation2012
- Automated System Testing Using Visual GUI Testing Tools: A Comparative Study in Industry2012
- WATER2011
- GUI testing using computer vision2010
- Software Test Automation in Practice: Empirical ObservationsAdvances in Software Engineering, 2010
- Maintaining and evolving GUI-directed test scripts2009
- Automatically repairing event sequence-based GUI test suites for regression testingACM Transactions on Software Engineering and Methodology, 2008
- Observations and lessons learned from automated testing2005