HtmlUnit: An Efficient Approach to Testing Web Applications

Skill Level:
Presentation Link

Top-to-bottom integration testing is a critical step in delivering quality web applications. HtmlUnit is an open source headless browser for the JVM which provides an efficient means of automating these integration tests. Unlike most other tools in this area, HtmlUnit simulates a browser rather than driving a “real” browser, and is capable of emulating the behavior of Firefox or IE for a very large number of web applications: from simple old-fashioned pre-AJAX applications all the way to complex Web 2.0 apps.

HtmlUnit’s approach provides obvious benefits in areas such as ease of deployment, performance, scalability, and AJAX testing, but also has some limitations. Project committer Daniel Gredler will provide a detailed overview of the library, explain how to get the most out of the HtmlUnit approach, and show why in many cases it is far more efficient than working with a “real” browser to ensure the quality of your web app.

The intended audience of the session are Java (or other JVM language) developers who need to write top-to-bottom integration tests for their web applications.

Attendees will learn about:

  • The two approaches to web app integration testing: browser simulation vs browser driving
  • The cons of the browser simulation approach
  • The pros of the browser simulation approach
  • Key extension points provided by HtmlUnit
  • Wrappers which allow you to hedge your bets and switch between the two approaches
Daniel Gredler

Daniel Gredler is a development lead at DHL Global Mail, where he focuses on custom shipping solutions. He is a committer to the HtmlUnit and Apache Tapestry projects, and has contributed to a number of other open source projects. In his free time, Daniel enjoys reading, metal detecting, and writing conference bios about himself.