If any of you write web applications for larger clients you are probably starting to see the same issues I am. There are too many browsers to support now! Welcome to browser hell. It is beginning to drive me crazy. Here are the latest stats from w3 schools on browser usage:
Browser Statistics Month by Month
|2007 ||IE7 ||IE6 ||IE5 ||Fx ||Moz ||S ||O|
|June ||19.7% ||37.3% ||1.5% ||34.0% ||1.4% ||1.3% ||1.8%|
|May ||19.2% ||38.1% ||1.5% ||33.7% ||1.3% ||1.4% ||1.7%|
|April ||19.1% ||38.4% ||1.7% ||32.9% ||1.3% ||1.5% ||1.6%|
|March ||18.0% ||38.7% ||2.0% ||31.8% ||1.3% ||1.6% ||1.6%|
|February ||16.4% ||39.8% ||2.5% ||31.2% ||1.4% ||1.7% ||1.5%|
|January ||13.3% ||42.3% ||3.0% ||31.0% ||1.5% ||1.7% ||1.5%|
This especially becomes an issue when you are are writing bleeding edge apps using Ajax and silverlight and developing on a vista machine. Well first you need a way to test IE 6. I have given up on IE 5, but there is a decent solution for testing with IE 6 on vista or any other machine where you are already running IE 7. See you can't run both browsers at the same time. So I run virtual PC 2007 which is free. They have a A VPC hard disk image containing a pre-activated Windows XP SP2, and either IE6 or IE7 and the IE7 Readiness Toolkit: Internet Explorer Application Compatibility VPC Image. The VHD expires August 2007, but I bet there will be an update to the expiration date soon.
Now you have IE 6 ready to test, but what about the others. Obviously you need firefox and might as well download safari for windows and Opera. Now I realize that safari only says 1.3% above, but many of you may have a client that works on a mac, which I do. So now I have to support Safari 2. whatever on the mac OS x. Now this one is a pain to support. I am trying to figure out how to do this currently and have come up with a couple of solutions. First you are not allowed to create a virtual image of mac OS x using vmware or virtual PC because apple does not allow it. I guess they want you to buy and ibook and virtualize vista. But I think I may have found a way to virtualize mac os x on vista. I am going to try it this week and let you know how it goes. It looks kind of painful so I may just use a paid service, browsrcamp, which offers a vnc connection to a mac.
So now we know what browsers to test and how, lets look at what libraries we should use for Ajax. ASP.NET Ajax is one obvious answer. It comes with built in support for all the browsers I have mentioned above and is fairly easy to use. Now I am a little biased, but I also have worked with jQuery which is also a nice Ajax library and has a strong community also.
When you are running your tests if you regularly validate your html, you will save hours ahead of time before you run your manual tests.
Good luck and may the browser be with you!