So, questions:
3) Who's got success stories to share?

I've started using Ruby to acceptance test our new web app. It's using the
COM interface to Internet Explorer to remote control the browser. Two cool
things I've enjoyed so far: the flexibility of Ruby to allow me to easily
create wrappers and handle things with method_missing, and drb. 

I'd considered doing this in VBScript, mainly to stick with the familiar for
others' benefit. But I don't see how I could do some of the wrapper things
I've been able to easily do in Ruby. As I started growing the wrapper, I
noticed I kept accessing the wrapped ie instance directly:

  iewrapper.ie.document.forms(0)

... so I'd push that into the iewrapper itself so I could call:

  iewrapper.document...

That was becoming tedious, though -- then I checked out method_missing and
realized I could simply pass everything that I hadn't explicitly wrapped
right on through. That's very handy and saved me a lot of time.

Knowing that, I'm more confident moving forward as I hope to craft a
framework that my customer can use to write their own scripts. I'm sure I
could do that in other scripting languages as well ... but knowing I've got
more freedom to do tricky things behind the scenes in Ruby makes me more
comfortable. And big thanks to Andy for the Windows installer ... otherwise
I'd be sunk selling my boss on using something that was hard to install.

With distributed Ruby, I quite painlessly setup testing servers on 3
machines: one with IE 4 & 5, another with 5.5, and a third with IE 6. From
one client machine, I can run all my acceptance tests on all these versions
of IE in very little time. 

I've also got a rough setup (using .bat files and psexec & pskill from
sysinternals.com) that will let me remotely kill the servers, check-out the
latest tests to them from SourceSafe, then re-start the servers. I may write
a server controller in ruby as well, which would be more elegant than this
current approach which blindly kills the ruby.exe process, assuming it's the
testing server.

Challenges: how do I test non-IE browsers? This was discussed a bit recently
on the XP list, I believe. One answer is: don't, keep your client-side
script to a minimum and do validate the html produced through w3.org's
validator. I have vague plans to see if I can automate that last one.

1) Who's got code?

It's ugly, but my IE wrapper code is open-sourced and could be used by
others. Of course, there's not much to it now, and it's not useful for any
general testing framework -- it may grow into something substantial the
further in I get. If anyone's interested in accessing it, it's a bit buried
in one of my sourceforge cvs repositories ... lemme know and I'll make it
more accessible.

2) Who's willing to write code?

I'll contribute things as long as it can be directly tied to my work. I've
got some freedom to contribute to opensource deals here, and I don't have
any time outside of work.

One thing I think would be handy to have in Ruby is a way to generate
keystrokes/mouse actions against other Windows. I'm dreading this a bit,
actually. If I ever have to test a msgbox that IE throws, I'm not certain
how I'll do that -- I've already had to workaround that once. One plus for
VBScript, it has a SendKeys call that quite simply achieves this.

Plus, with keystroke ability, that'd be a foot in the door for testing other
browsers. Not as elegant as the nice COM interface I've got with IE, but
might be pretty workable.

Chris