HtmlUnit

HtmlUnit

HtmlUnit is a headless web browser written in Java. It allows high-level manipulation of websites from other Java code, including filling and submitting forms and clicking hyperlinks. It also provides access to the structure and the details within received web pages. HtmlUnit emulates parts of browser behaviour including the lower-level aspects of TCP/IP and HTTP. A sequence such as getPage(url), getLinkWith("Click here"), click() allows a user to navigate through hypertext and obtain web pages that include HTML, JavaScript, Ajax and cookies. This headless browser can deal with HTTPS security, basic HTTP authentication, automatic page redirection and other HTTP headers. It allows Java test code to examine returned pages either as text, an XML DOM, or as collections of forms, tables, and links.[1]

Quick Facts Initial release, Stable release ...

The goal is to simulate real browsers; namely Chrome, Firefox and Edge.

The most common use of HtmlUnit is test automation of web pages, but sometimes it can be used for web scraping, or downloading website content.

Benefits

  • Provides high-level API, taking away lower-level details away from the user.[2]
  • Compared to other WebDriver implementations, HtmlUnitDriver is the fastest to implement.[3]
  • It can be configured to simulate a specific browser.

Drawbacks

  • Element layout and rendering can not be tested.[4]
  • The JavaScript support is not complete, which is one of the areas of ongoing enhancements.

Used technologies

Libraries using HtmlUnit

See also


References

  1. "HtmlUnit Home". Sourceforge. Retrieved 30 August 2019.
  2. Beust, Cédric; Suleiman, Hani (15 October 2007). Next Generation Java Testing: TestNG and Advanced Concepts. Pearson Education. ISBN 9780132702270. Retrieved 30 August 2019.
  3. "HtmlUnit Driver". Github. Retrieved 30 August 2019.
  4. "Testing HTML Unit". GWT Project. Retrieved 30 August 2019.

Bibliography

Further reading


Share this article:

This article uses material from the Wikipedia article HtmlUnit, and is written by contributors. Text is available under a CC BY-SA 4.0 International License; additional terms may apply. Images, videos and audio are available under their respective licenses.