OSCON 2006 Day two -- Testing Web Apps
This afternoon's tutorial, Rock-solid Web Development: Testing Web Apps by John Paul Ashenfelter (slides at http://www.transitionpoint.com or http://www.ashenfelter.com), has so far been the most valuable session I've attended so far, even if it is only for showing me that Selenium exists.
The tutorial spent a great deal of time explaining/lecturing why testing is a good idea, but aside from the pedantry, two very good resources were discussed - Selenium (http://www.openqa.org/selenium/) and Grinder (http://grinder.sourceforge.net). I had heard about and investigated Grinder before as a load testing app, but Selenium I had not heard of, and is an excellent functional test tool that runs in the browser, has a firefox plug-in IDE and uses html tables for tests. If you do nothing else today, do yourself a favor and check out Selenium. It's pretty dang cool.
John also talked about using ant for automated testing, and integrating Selenium, grinder and using dbunit for database initialization (if you need to have a specific database state before a test). John talked briefly about continuous integration and 'information radiators' as natural follow-ups to automated testing, and almost has me drinking the kool-aid. It's worth taking a look at his slides, and if you have any questions on the particulars of the session, feel free to ask for details.