Martin Fowler coined the term “Fluent Interface” to describe objects that expose an interface that flows, and is designed to be readable and concise. The cost of this fluency is additional effort required to design the interface for your object and the slight increase in complexity. These types of interfaces are often utilized to create configurations for your objects but can progress into an internal Domain Specific Language or DSL.
NOTE: This project is no longer in development. I migrated it to a new location at: https://github.com/djangofan/WebDriverTestingTemplate/blob/master/google/src/main/java/qa/webdriver/util/GoogleSearchPage.java
Selenium2 WebDriver fluent page object pattern example
Designed for Eclipse. Maven will download Selenium libraries.
Other fluent API libraries
Commons-CSV, RestAssured, XMLSlurper, JOOQ, and jRTF.