Confidential GUI Automation When it adds value Rev PA1 2011-12-07 1
Introduction GUI automation can be difficult to achieve success with for many reasons; difficult test design being one of those reasons  GUI can bring value, but it is easy to get wrong and the value it brings is often overrated  It can often be replaced by more effective API testing  Is there a niche for UI automation?
Record & Play With a Record-and-Play framework the Tester can execute a test cases and record it using an automation tool The script created can then be used to rerun the test case automatically This type of automation tool generates test cases with very bad design that have high maintenance cost and low re- usebility However if the tool is used in the right way, it can be a powerful complement to a tester’s arsenal
Key Factors to Success Understand that this is not the way to create a large test suit used for regression testing This is a complement to the tester during manual testing – see it more as tool-supported testing, than automated testing It must be extremely easy to use – this is more important than any other functionality of the tool – if it is not easy, then it will only be a burden and the tester will not use it It should be as integrated as possible in the product – Google has integrated record-and-play in Chrome 
Empower the Tester with Tool Support By giving the tester this tool it enables a whole new range of manual tests that would have been tedious or impossible to execute otherwise Stress testing Duration testing Aging tests But it cannot be stated enough that the key success factor here is ease of use of the GUI automation tool
When to use GUI vs. API automation? If the test cases are going to live on and be re-used and maintained, GUI automation is often not the best solution If the test is not going to be re-used or maintained, and the GUI automation tool lets the tester create automated test cases at very low cost, then GUI automation is an option Always think about if it is actually cheaper to just do it manually – for example low priority test cases that will only be executed once in a small project that will not be re-used in the future
Conclusion There is value in GUI automation – just not in how it has often been used in the past Don’t think of it as test automation, think of it as tool support for empowering the manual tester Ease-of-use; don’t underestimate the value of an easy to use and well integrated GUI automation tool Re-use and Maintenance are the biggest problems with GUI automation – GUI automation is valuable these pitfalls can be avoided Don’t use GUI automation for creating large regression suites
Reference GUI Schmooeyhttp://angryweasel.com/blog/?p=7 RPF – Google’s Record and Playback Frameworkhttp://googletesting.blogspot.com/2011/11/rpf-googles-record-playback-framework.html It’s (probably) a Design Problemhttp://angryweasel.com/blog/?p=342 Design for GUI Automationhttp://angryweasel.com/blog/?p=332 API Testing – How can it helphttp://www.testingmentor.com/imtesty/2011/12/01/api-testinghow-can-it-help/