The Need For Browser Testing

Ok, I’ve done a fair amount of work over the years in browser compatibility. From web development work, to writing the reporter tool. I’m well acquainted with the stress of testing your beautiful site against a dozen different browsers/versions/platforms. I just recently did so with which I launched the other day. IE5,5.5,6, Firefox 1.0, 1.5, and soon 3.0 (2.0 is pretty similar to 1.5, so likely not much trouble), Safari, Opera! It’s a drag.

What drives me nuts is I can’t keep parallel versions of IE on 1 system to test against. I want to test against IE 5.5, 6, and 7 (RC1 as of this post). This hack lets you have IE 7 as a standalone, but the broken stuff is rather critical.

So what does a web developer do?

  • Keep several computers lying around with different browser versions? This seems costly?
  • VMWare (or Parallels) with different configurations? This too is rather expensive, as Windows licenses aren’t just given out like Linux.
  • Install/uninstall each and every time? That’s excessively time consuming to test between just IE6 and IE 7.

I know there are some services out there that will give you screenshots of your page, but that doesn’t work for things like JavaScript functionality testing, and debugging. So those are effectively worthless for most purposes.

So what is the recommended approach to testing between IE versions? I haven’t been able to find any recommendation from Microsoft on the topic (if anyone knows of one, please point it out). Perhaps it’s a topic for the guys over at the IE Blog?

The same question goes for Safari? How can I a Mac OS X Tiger guy, test how my apps ran with whatever version of Safari someone with Mac OS X 10.3.6 would have? Or 10.2 (though to be honest, I have a 10.2 machine around)? Perhaps it’s a topic for their blog as well?

For the record, all Firefox releases can be found here, Opera can be found here.

So what’s the “best practice”? So far it seems the jury is out on IE and Safari. Firefox and Opera are a pain, but easily done. So what do you do?