Releasenotes WatiN 2.1

This page contains the release notes for WatiN 2.1.0.1196, released on April 12, 2011.

You can download this release here or install it via NuGet using: PM> Install-Package WatiN

This release contains binaries for .Net 2.0, 3.5 and 4.0.

General Changes

This release adds support for automating Internet Explorer 9 with pages shown in IE9mode (IE8mode, IE7mode and quirks mode are also supported).

Fixed issues IE9

  • Added new static method ReturnDialogHandler.CreateInstance() which will return the right version of this dialoghandler for your installed version of IE.
  • Added Frame.FrameElement which will return the frame element in which a frame or iframe is contained.
  • Fixed issue with “NoMerge”. Now supports IE8 and IE9.
  • Refactored AllFramesProcessor to work (better) with IE9. Fixes issues with iterating over Frames in FrameCollection, sometimes resulting in unstable behavior.
  • Fixed issue with selecting options in a selectlist or selecting a checkbox when using IE9. WatiN is retrieving the actual value of the property from the DOM element instead of calling element.getAttribute() as it did in previous versions.

Other fixes

* Fixed issue where Element.CheckBox(Find.ByLabelText(“A test checkbox”)) was not found with this html:

<label><input type=”checkbox” id=”myid1″>A test checkbox</label>

* Added 2 new overloads:
Find.ByLabelText(regex)
Find.ByLabelText(predicate)

* Partially fixed issue were Find.BySelector was not working for elements in a Frame. Still doesn’t work with nested frames pages.

* Fixed single quotes escaping issue when using Find.BySelector like this:

var element = browser.element(Find.BySelector(“input[name='textinput1']“));

* Any none key or mouse events fired in a Firefox now use the given set of param values. Example:
element.FireEvent(“onfocus”, new NameValueCollection{{“bubbles”,”false”}})
This will fire the onfocus event and pass in bubbles value false. In previous version these params were ignored.

* Key events fired in Firefox now use the given set of param values. Example:
element.FireEvent(“onkeydown”, new NameValueCollection{{“keyCode”,”70″}})
This will fire the keydown event and pass in keyCode value 70. In previous version these params were ignored.

* Mouse events fired in Firefox now use the given set of param values. Example:
element.FireEvent(“onmousedown”, new NameValueCollection{{“button”,”2″}})
This will fire the mousedown event and pass in button value 2. In previous version these params were ignored.

* Fixed SF 3179577 “QuerySelectorConstraint.WriteDescriptionTo throws exception” when ElementNotFoundException is expected.

* Fixed SF 3175822 “Wrong exception message in WaitUntilContainsText”