Tutorial

Rock-solid Web Development: Testing Web Apps

John Paul Ashenfelter, CTO, TransitionPoint

Track: Web Apps
Date: Tuesday, July 25
Time: 1:30pm - 5:00pm
Location: Portland 256

Most developers realize that they should be thoroughly testing their web applications, but in many overworked or understaffed groups, testing tends to be quickly tacked on at the end of a project with correspondingly mediocre results. Even in situations where unit testing has been rigorously implemented, functional and regression testing can be given little attention. The goal of this tutorial is to replace the cries of "but it worked on 'my' machine" with automated, systematic testing of your web application.

The main focus will be on using Selenium for functional and regression testing, and Grinder for load and performance testing. These language-agnostic tools provide a means of testing the application from the top-down, emulating the behavior of users -- much like the ad hoc manual "testing" that is familiar to us all. By scripting and automating this testing, developers can focus on writing code, the QA team can focus on writing tests, and the entire team can focus on producing higher-quality software.

Along with the core testing tools, we'll cover how to integrate them into your development workflow using automation tools like Ant, CruiseControl, and Continuum. We'll also touch on supporting tools ranging from database manipulation with DBUnit to integrating (X)HTML validation into your testing process. By the end of the tutorial, you should have everything you need to jump start your own web application testing to help you produce web applications that are more reliable, better performing, and just simply better than they were before.