GWT 2.1 does have an IsWidget interface, if that is all that you need:
http://google-web-toolkit.googlecode.com/svn/javadoc/2.1/com/google/gwt/app/place/IsWidget.html
If you need more, I've been making interfaces for each widget:
https://github.com/stephenh/gwt-mpv/tree/master/user/src/main/java/org/gwtmpv/widgets
They work great for my purposes, e.g. I can do:
IsTextBox t = newTextBox(); // will be real text box or stub text box
t.getStyle().setColor("blue");
And in a non-GWT unit test, use the stub widget/stub style to:
assertThat(t.getStyle().getColor(), is("blue"));
(Also, I commented on the bug you mentioned--I hadn't seen that before.
Thanks for the link.)
- Stephen