JWebUnit changes

Release History

Version Date Description
3.2 March 17, 2014 HtmlUnit 2.14
3.1 November 22, 2012 Cleanup for Webdriver integration. HtmlUnit 2.11. Java 1.6+
3.0 August 18, 2011 Updated all internals to JUnit 4. HtmlUnit 2.9.
2.5 October 24, 2010 Small fixes and dependency updates
2.4 July 4, 2010 Licensing change
2.3 March 3, 2010 Updated to JUnit 4.7 and latest HtmlUnit and Selenium
2.2 May 15, 2009  
2.1 December 12, 2008  
2.0 October 27, 2008 First release that requires Java 1.4+
1.5 april 22, 2008 The latest major release before Java 1.5 migration
1.4.1 may 5, 2007  
1.4 march 17, 2007  
1.4-RC4 march 04, 2007  
1.4-RC3 january 11, 2007  
1.4-RC2 december 5, 2006  
1.4-RC1 november 20, 2006  
1.3 july 28, 2006  
1.3-RC2 july 07, 2006  
1.3-RC1 june 27, 2006 After all these great changes, we need a RC.
1.2 june 13, 2004 The long awaited release
1.1    
1.0    
RC2    
RC1    

Release 3.2 - March 17, 2014

Type Changes By

update

Updated to JUnit 4.11. henryju

update

Updated to HtmlUnit 2.14. henryju

fix

Assert form is present before really calling setWorkingForm(String nameOrId, int index). Fixes 3590252. Thanks to Kenny MacLeod. henryju

update

Set useInsecureSSL to true by default for HtmlUnit plugin. Fixes 3415400. Thanks to Alex. henryju

Release 3.1 - November 22, 2012

Type Changes By

update

Updated to HtmlUnit 2.11. As a result JWebUnit now also require Java 1.6+. henryju

update

Updated dependencies to not provide logback transitively. Added a section in documentation to explain how to use logback. Fixes 3476459. Thanks to Jevon Wright. henryju

update

getPageText() (and all related assertXX methods) now only deals with what is inside <body> element. Previously it was also returning page title for example. henryju

update

gotoRootWindow() now goes to the root "frame" in a multi-frame window. Previously it was only by chance. henryju

update

Deprecated gotoWindow(windowID) method as implementation is not stable and window ID is not something well-defined. henryju

fix

HtmlUnitTestingEngineImpl.gotoPage no longer returns the failing status. Broken since 2.5 after applying patch from issue 1864365. Fixes 3395872. Thanks to Tim Pizey. henryju

Release 3.0 - August 18, 2011

Type Changes By

update

Updated to HtmlUnit 2.9. henryju

fix

Fixed handling of several cookies/headers with same name. getAllHeaders() was wrongly returning only the latest header header with the same name so this method was deprecated and a new one was added with a different return type. See getResponseHeaders(). AssertCookiePresent/Match was also updated to take the last set cookie of the given name instead of the first one. Fixes 3190055. Thanks to Achim Westermann. henryju

add

Added indexed alternatives of methods clickLinkWithImage, assertLinkPresentWithImage and assertLinkNotPresentWithImage. Fixes 3166502. Thanks to Harri. henryju

fix

assertTitleNotSame works incorrectly. Deprecated and replaced by a working assertTitleNotEquals. Fixes 3116839. Thanks to Tony Qian. henryju

update

Updated to JUnit 4. See migration section of the documentation. Fixes 2837745. henryju

Release 2.5 - October 24, 2010

Type Changes By

fix

Fixed handling of absolute image path (when src attribute start with a /). Fixes 2970512. Thanks to Todd Owen. henryju

update

Updated to slf4j 1.6.1. henryju

update

Updated to HtmlUnit 2.8. henryju

update

Updated to JUnit 4.8.2. henryju

add

Added the ability to change RefreshHandler in HtmlUnitTestingEngine. Fixes 1864365. Thanks to Jason McSwain. henryju

Release 2.4 - July 4, 2010

Type Changes By

update

License was changed to LGPL v3 henryju

Release 2.3 - March 3, 2010

Type Changes By

update

Updated to Selenium RC 1.0.1. henryju

update

Updated to HtmlUnit 2.7. henryju

update

Updated to JUnit 4.7. henryju

Release 2.2 - May 15, 2009

Type Changes By

update

Updated to HtmlUnit 2.5. henryju

add

Enable partial matches of image src and alt attributes. Added assertImagePresentPartial(String partialImageSrc, String partialImageAlt) method. Fixes 2106019. Thanks to Kent R. Spillner. henryju

add

Exposed option to toggle exceptions on Javascript errors. Fixes 2647451. Thanks to Kent R. Spillner. henryju

fix

Used buffered output stream to improve WebTester.saveAs method performances. Fixes 2568604. Thanks to Umkhulubaas. henryju

fix

WebClient.closeAllWindows() called to prevent memory leak. Fixes 2525065. Thanks to Sivan Mozes. henryju

Release 2.1 - December 12, 2008

Type Changes By

add

Added new IElement element interface, and methods to directly access elements by XPath. jevonwright

add

Added assertHeader*() and assertResponseCode*() methods. Fixes 1744628. jevonwright

add

Added WebTestCase(WebTester) constructor. Fixes 1728676. jevonwright

add

Added assertLabeledFieldEquals(id, text), assertLabel*(), and setLabeledFormElementField(id, value) methods. Fixes 1519807. jevonwright

update

BC CHANGE: setFormElement(), assertFormElementEquals() methods will no longer assert that a form already exists in the page (as allowed by the HTML standard). jevonwright

fix

navigator.userAgent is no longer null by default. Test cases now use the Firefox 3.0 user agent as the default, rather than MSIE 4.0. Fixes 1724695. jevonwright

fix

Fixed proxy authentication bug in HtmlUnit implementation. Fixes 2306967. Thanks to r_monson. jevonwright

add

Added assertMatch(regexp, text) and assertNotMatch(regexp, text) methods. Fixes 1637716. jevonwright

add

Added assertCommentPresent(text) and assertCommentNotPresent(text) methods. Fixes 1277374. jevonwright

add

Added setTimeout() method. Fixes 1674646. jevonwright

fix

Cleaned up the quickstart documentation. Fixes 2404789. jevonwright

Release 2.0 - October 27, 2008

Type Changes By

update

Updated to HtmlUnit 2.3. henryju

fix

selectOptionByValue failed with Selenium Plugin. selectOption always failed, cannot find element. Other improvements to Selenium plugin. Fixes 2007985,2009776. Thanks to Josh Lane. joshlane

update

Updated to HtmlUnit 2.1 and Java 1.5. Fixes 1950248. Thanks to Agnes Ro. henryju

Release 1.5 - april 22, 2008

Type Changes By

fix

setProxyAuthorization caused IllegalArgumentException with null username/password and not null host/port. Fixes 1860745. Thanks to Ward Bergmans. henryju

add

Added setHiddenField method to WebTestCase. Fixes 1793818. Thanks to Achim Huegen. henryju

fix

assertCheckbox[Not]Present now works if HTML type attribute value is not lowercase (e.g.: type="CHECKBOX"). Fixes 1747033. Thanks to Carlo Possati. henryju

update

Update to HtmlUnit 1.14. henryju

add

Support multiple selects with same name. Fixes 1874212. Thanks to Mike C. henryju

fix

assertButtonPresentWithText and clickButtonWithText now work for input button (submit, reset, button) matching the value attribute. Fixes 1845893. Thanks to Mike. henryju

add

Add basic Selenium support. henryju

update

Rename IJWebUnitDialog in ITestingEngine. henryju

Release 1.4.1 - may 5, 2007

Type Changes By

fix

getPageSource() now returns source of the current frame or window. Fixes 1706395. Thanks to meilon. henryju

fix

setTextField now doesn't change the current working form if already set. clickRadioOption now doesn't change the current working form if already set. assertFormElementPresent now only searches the current working form if already set. Fixes 1708229,1710809,1712633. Thanks to Jon,Joe Fisher. henryju

Release 1.4 - march 17, 2007

Type Changes By

update

Update to HtmlUnit 1.11. henryju

add

Add a new method: getElementTextByXPath. Fixes 1677214. Thanks to Dragan Pazin. henryju

Release 1.4-RC4 - march 04, 2007

Type Changes By

add

Add new ResourceBundle related methods allowing formatting of resources. Fixes 993058. Thanks to Chris Eldredge. henryju

fix

Table.getRows is now public. Fixes 1633967. Thanks to Dirk Jerusalem. henryju

fix

gotoFrame should throw an Exception when no frame is found. Fixes 1638720. henryju

fix

Make WebTestCase abstract. Fixes 735092. henryju

fix

Fix assertRadioButton[Not]Selected. henryju

fix

beginAt and gotoPage throw a TestingEngineResponseException on bad Http status code. henryju

fix

Make WebTestCase.tearDown() protected. Make WebTestCase.tester protected. Add WebTestCase.getTester() method. henryju

Release 1.4-RC3 - january 11, 2007

Type Changes By

fix

Fix exception when trying to access a page with a loop redirection. Fixes 1628076. henryju

add

Add methods to test images in a web page: assertImagePresent(String imageSrc, String imageAlt), assertImageValid(String imageSrc, String imageAlt), assertImageValidAndStore(String imageSrc, String imageAlt, File out) Fixes 1531873. Thanks to Gregory Joseph. henryju

add

Add methods in TestContext to specify custom request headers. Fixes 1563168. Thanks to Jeff Grimshaw. henryju

Release 1.4-RC2 - december 5, 2006

Type Changes By

fix

Reset() function now check for the presence of a reset button. henryju

add

Add the possibility to manipulate frame (and iframe) by ID in addition to their name. henryju

add

Add saveAs(File f) and assertDownloadedFileEquals(File expected) methods to check downloaded response as a binary File. henryju

add

Add getServeurResponse() method to debug HTTP response. henryju

Release 1.4-RC1 - november 20, 2006

Type Changes By

fix

submit([...]) methods now detect image input elements. henryju

add

Add setWorkingForm(int index) method to select the current form by its index. henryju

update

Update to HtmlUnit 1.10. henryju

fix

Fix cookie support. You can now properly manually add cookie to the conversation by using TestContext.addCookie() before calling beginAt(). henryju

add

Add setExpectedJavascript[Alert/Confirm/Prompt] methods to check presence of Javascript message boxes. henryju

add

Add support for Basic and Digest Authentication using Context.setAuthorization(). Context.setNTMLAuthorization() and Context.setProxyAuthorization may also work (not tested). henryju

fix

beginAt and gotoPage now accept absolute URL beginning with "http://", "https://" or "www." Fixes 1554148. Thanks to Joe Athman. henryju

add

Add new methods: assertCheckBox[Not]Selected(String name, String value) to deal with multiple checkboxes with the same name. Fixes 1575956. Thanks to Lasse Koskela. henryju

fix

assertButtonPresentWithText(String) was checking on "value" attribut value instead of text between button tag. Fixes 1567947. Thanks to Jack. henryju

fix

selectOption() reset previous setWorkingForm() action. Problematic with 2 selects with same name in 2 different forms. Fixes 1565634. Thanks to Veenay Dodia. henryju

Release 1.3 - july 28, 2006

Type Changes By

remove

assertFormParameterValue is now deprecated. Please use more specific method, like assertTextFieldEquals, assertSelectedValueEqual, ... Thanks to Fred Burlet. henryju

add

Add assertHiddenFieldPresent method to check presence of an hidden field with given value. Thanks to Fred Burlet. henryju

add

Add assertTextFieldEquals method to check content of a text field (text input, password input, textarea). Thanks to Fred Burlet. henryju

fix

setTextField is now working with TextArea. Thanks to Fred Burlet. henryju

fix

Current form was saved but not reseted when page content change. Thanks to Mark Chaimungkalanont. henryju

Release 1.3-RC2 - july 07, 2006

Type Changes By

add

Show the getTable() method in WebTestCase to allow custom assertions. Thanks to Tetyana Gimgina. henryju

add

Introduce the setFormElement() back as a deprecated method that wraps setTextField(). Fixes 1517851. Thanks to Tetyana Gimgina. henryju

update

Update to HtmlUnit 1.9. henryju

add

Allow selection of forms with same name (with index). Add setWorkingForm(String nameOrId, int index) to the API. Fixes 1515297. Thanks to Jeffrey W. Badorek. henryju

Release 1.3-RC1 - june 27, 2006

Type Changes By

add

Added ability to navigate to windows / assert presence by window id. Thanks to Buhi Mume. henryju

remove

Remove HttpUnit testing engine. henryju

update

Refactoring of Table assertions to handle perfectly colspan and rowspan. henryju

add

Added XPath methods to core API. henryju

update

Split jWebUnit in modules: one for the core (jWebUnit API), one for the tests (that all plugins should pass), and one for each plugin (currently HtmlUnit). This way, for example, when you want to use one plugin, you don't have to include all others dependencies. henryju

update

Updated to Jetty 6 for running tests. Need less dependencies and run faster. henryju

add

Added HtmlUnitDialog, that provide better Javascript support. henryju

add

Added Maven 2 support. There are many reports available on the website. henryju

update

Added new method to clickButtonWithText. I believe it is useful addition to existing functionality as we already have assertButtonPresentWithText(). Fixes 1064807. Nicholas Neuberger

add

Integrated patch for multiple submit buttons with different values. API change - assertSubmitButtonValue(button, value) now assertSubmitButtonPresent(button, value). Fixes 800660. Thanks to Dragos Manolescu. Jim Weaver

add

Assert button (not) present with text added. Fixes 1005396. Thanks to John Evans. Martijn Dashorst

add

Added ability to navigate to windows / assert presence by window title. Fixes 999600. Jim Weaver

add

Added assert select option present / not present. Fixes 979856. Thanks to Kenny MacLeod. Jim Weaver

add

onchange event bug fixed / test added. Fixes 981534. Jim Weaver

fix

Memory leak in WebTestCase. Note: tester is no longer allocated at constructor time, but just before 'setUp' is called. Fixes 972992. Thanks to Budi Boentaran. Martijn Dashorst

update

better support subclassing of WebTestCase Fixes 735087. Thanks to Oliver Haid. Vivek Venugopalan

Release 1.2 - june 13, 2004

Type Changes By

add

assertTextNotInElement method addition Jim Weaver

update

form assertion failure messages more accurate Jim Weaver

add

assertFormNotPresent method addition Wilkes Joiner

add

goto a page directly by url Fixes 724337. Thanks to Alex Chaffee.

add

support for clicking links by text when there are multiple links with same text on page Thanks to justin sampson.

add

support for multiple checkboxes with different values Fixes 627735. Wilkes Joiner

add

Moved the build system from Ant to Maven. Martijn Dashorst

update

Upgraded all dependencies (httpunit, rhino, nekohtml, xerces, junit) to their newest released version. Martijn Dashorst

add

Added support for cookies. Fixes 715841. Thanks to Vivek Venugopalan. Jim Weaver

fix

Wrong text in Assert Fixes 856218. Thanks to Roberto Cosenza. Vivek Venugopalan

fix

quickstart.html setBaseUrl is mistyped Fixes 908440. Thanks to Vasile Alaiba. Vivek Venugopalan

fix

assertFormElementPresent fails when a form is in an IFRAME Fixes 910242. Thanks to Hien Nguyen. Vivek Venugopalan

fix

assertLinkPresentWithImage("foo") fails if foo isn't first Fixes 908372. Vivek Venugopalan

fix

broken link in jwebunit-1.1.1 set of files Fixes 918278. Thanks to Jim Cloughley. Vivek Venugopalan

fix

prevent js files from being returned as response content Jim Weaver

fix

Fork enabled for ant-build compile. Fixes 727614. Thanks to Brad Clarke. Jim Weaver

fix

Form submit overload for forms with multiple submit buttons. Fixes 745868. Thanks to Charles Blaxland. Jim Weaver

Release 1.1

Type Changes By

add

Support for frames and multiple windows. Thanks to Allen Wu.

add

Support for non-submit buttons (input type='button').

add

Support for accessing form elements by display label. Thanks to Justin Sampson.

add

Support for form reset and onReset event.

fix

Fixed problem with onClick javascript event not being triggered by clickLink methods.

update

HttpUnit 1.5 incorporated, which also replaces jTidy with nekoHtml.

Release 1.0

Type Changes By

add

Support for links with images contributed. Thanks to Justin Sampson.

add

Methods were added to assert and navigate links with images by filename.

add

assertFormElementEmpty method added - a convenience.

update

assertHasForm renamed to assertFormPresent to be consistent with other methods.

Release RC2

Type Changes By

add

Support for Radio Options.

add

Methods were added to support interaction with and testing of radio button groups.

add

Select boxes.

add

Methods were added to support interaction with and testing of single-select elements. Multi-select elements are not yet supported.

update

FormControl renamed to FormElement.

update

Methods related to setting and testing of form input fields were renamed for consistency. All such methods now refer to "FormElement".

update

InResponse renamed to Present. AssertXInResponse methods were renamed to AssertXPresent for consistency with other method names.

update

Multiple Form support simplified. The two submitForm methods (submitForm(formName) and submitForm(formName, buttonName)) where removed. To explicitly indicate which form to work with on a multi-form page, use the new setWorkingForm method. The two remaining submit methods (submit() and submit(buttonName)) are used to submit the form when ready.

update

FormControl renamed to FormElement

update

ClickLink signature change. clickLink parameter is now the link id. To navigate a link based on text contained in the link, use clickLinkWithText.

update

Access to HttpUnit Response, Request, WebConversation opened up.

update

New HttpUnit (1.4.5) utilized, which provides JavaScript support.

update

HttpUnitDialog class changed to act as a WebClientListener and update the response upon responseReceived call back.

update

Updated to JUnit 3.8.1.

Release RC1

Type Changes By

add

First release.