Organizations today are increasingly turning to automation testing for their web-based applications. As the market leader in automation web testing, Selenium's solution has taken the industry by storm. However, few companies have built out a testing organization that can effectively utilize an automation testing framework where tests are written and maintained in Java, Ruby, or other 3GL/4GL Languages. Is the answer to hire or cross-utilize developers who will write and maintain these automated test cases for the life of the product, or can one effectively use their current Software Quality Analysts for successful automation testing?

Liferay, Inc. has created a Browser-Based Automated Testing Framework on top of Selenium WebDriver, which allows all of our Test Engineers (Jr., Mid-Level, and Senior alike) to create effective, maintainable, reusable, simple, and powerful automated test scripts. This XML-Based Framework also provides the ability to produce powerful reports using the data from our automated test runs. We will discuss how this framework has been effectively used at Liferay, Inc. and how Test Engineers at other organizations can use the concepts and structures that we have put in place to improve automation test maintainability and reusability.

Outline/structure of the Session

Part 1: Review the history of Liferay's Selenium test scripts (from Selenium API to WebDriver) and how those scripts formed the framework for automation at Liferay.

Part 2: Discuss the challenges Liferay faced when presented with an ever-growing and constantly-changing web interface: problems of Maintainability, Reusing Scripts, DesignSimplicity, and UsefulReporting Capabilities.

Part 3: Discuss how we created a testing framework on top of Selenium WebDriver that solved each one of these problems and helped effectively focus our SQA skills into robust automation testing.

Learning Outcome

After attending the session, attendees will:

have a clear understanding of the challenges faced using Selenium WebDriver in automating tests for software that is continually being enhanced

understand how those problems were solved very effectively while still maintaining robust automation tests, and

be able to put some of the concepts to use for finding a solution to their own obstacles while using the Selenium WebDriver tool.