April 22, 2006

Learning to appreciate Selenium 1.0.6

Earlier this month I had a problem with Selenium. This was because I was trying to test rollovers, and I didn't realized the Selenium can only trigger rollover events when run in Internet Explorer!

Today I am setting up unit testing on the canonical e-commerce interface.

I've left my canonical interface rough around the edges to more accurately simulate my typical clients' production environment. Image names are not consistent, for instance, and the data structures I use are bloated, with barely-mnemonic naming schemes. This has so far prevented me from getting a false sense of ease and thus overvonfidence when working on my own application.

So I was able to appreciate the rigor with which writing Selenium tests forced me to examine my own code. Which div has the mouseover that triggers the image switch? Are all of the image names consistent? These questions all too often don't get answered until there's a bug which requires their investigation.

A Selenium test can be a narrative format in which to describe the optimal functioning of an application. The test itself creates a record of the required functionality of a given application.