Selenium is an automated web testing framework with bindings for Perl (the aforementioned WWW::Selenium), PHP, JavaScript, Python, Ruby, Java, and the .Net framework. It supports JavaScript in a page, including triggering event handlers for the DOM "onevents", triggering key presses and releases, changing form values, and more.
While it's designed for automated testing of web-based applications, it should be quite handy for interfacing with them for other purposes as well. I'd like to thank jeffa for reminding me about it as well as mentioning it to the OP. I've always meant to get around to setting up tests using it to see how I like it compared to what I've been using.
| [reply] |