views:

68

answers:

7

Hello

I've been Googling this one, on and off, for a few days now. When generating non-commercial Web sites, what's the best strategy when it comes to cross-browser testing? I use Windows 7 and Textpad to develop my HTML/CSS/JavaScript/PHP - i.e.: no dreamweaver, kompozer, Etc.

I currently test using Firefox 3.6 and IE8. The last time I checked, this represented 80% of the browser market. I don't have Safari installed, nor Google Chrome, but would like to know roughly how much of the browser market will 'behave' with my site (http://www.simoncatlin.co.uk), especially as I'm using a lot of timers, screen measurement, Etc.

I'm not after perfection, but would like to know how close to 100% I'm getting.

Thanks in advance

Simon Catlin

+2  A: 

Unfortunately I have found the best way to assure cross-browser compatibility is to actually test every feature in all browsers. Its cumbersome but its the world we live in.

Using Cross-Browser libraries like JQuery Definately help.

Climber104
If you are having to test your application multiple times, have you considered using something like selenium? It should allow you to write tests that can be run against multiple browsers.
Mark Irvine
+1  A: 

May I recommend to pay particular attention to quirkiness of IE6, it has been a lot of pain for web-developers over the past years,so make sure any special javascript code and CSS alignments are particularly well tested with IE6.

Jas
I had written off IE6, assuming that most people would be on 7 or 8. Is that a bad assumption?
Simon Catlin
As a matter of fact, and according to a research report I read recently, IE6 still figures VERY prominently. If I remember well a figure of close to 60% web users was estimated to use IE6. This is mostly attributed to non-power user group and/or users in large corporations who are dictated their browsers by IT departments.
Jas
And having developed for web myself, I know that failure to fix IE6 issues will impact your product significantly.
Jas
A: 

For non-commercial sites, at least the ones I've worked on, there is usually an edict like ' this needs to work on FF' or 'IE is not supported'. You might want to check with your employer.

hvgotcodes
Thanks hvgotcodes. This is a "personal" site, so to speak, i.e.: it's not associated with my IT job.
Simon Catlin
+1  A: 

I've found IE7 to be a useful LCD for moderately complex websites. I don't have the resources to do exhaustive browser testing. This came to be as I started to noticed it's easy to make things that do not work on IE7

Gabriel
A: 

In my humble opinion, you should AT LEAST test with Firefox and a Webkit browser (Chrome or Safari). And of course IE. It is recommended to test with IE8, IE7 and IE6 because unfortunately all of these is still being used by lots of users.

If you use jQuery and conditional comments for IE (to fix css problems), everything should work fine.

bazmegakapa
+1  A: 

You need to think about your application and your user base. For example, historically, IE was installed on many home computers. Most average internet users would never go and install another browser because they didn't really care.

There are lots of people however, that do care. Those sorts of people are inclined to install a new browser (or two or three). They tend to be much more tech savy and their expectations are a lot different.

Looking at browser market share may be misleading. If you are targeting your website to average internet users, then you'll probably do ok to test the top 2 or 3 browsers. If you are likely to attract a more technical audience, then you can expect a much wider range of browsers.

The best stats to use are your own. Look at you logs and run them through some tools that will give you the breakdown of browsers that come to your site.

Some interesting links for you:

Example: 25% of the visitors we track at Squidoo use Firefox, which is not surprising. But 50% of the people who actually build pages on the site are Firefox users. Twice as many. http://sethgodin.typepad.com/seths_blog/2008/04/why-downloading.html

http://www.w3schools.com/browsers/browsers_stats.asp

Mark Irvine
Excellent - thanks for that Mark.
Simon Catlin
+1  A: 

Testing is a very extensive field. On web, due to many implementation, it is even more extensive.

But let me give my 2 cents. Go read about progressive enhancement. Keep this in mind.

But keep also in mind that no browser is 100% standards compliant. Firefox, Opera, Chrome, Safari, IE... none is 100% standards compatible. For scripting this goes worse about compatibility.

I strongly recommend follow these steps when making a website:

  • start from scratch, with plain HTML, CSS and content. Make your mock ups. Everything standard, and developed upon a nice browser (I do use Firefox + firebug). MAKE IT ACCESSIBLE!

  • once you finish this raw version, try it on mainstream browsers. IE 7, IE 8, Chrome/Safari, Opera. Let your audience guide your test bias. If you write about Firefox, it's predictable that 70+% of your audience will use it. If you make a simple user e-commerce site, then you should worry more with IE7 and IE6. Make use of conditional comments for IE fixes, vendor specific extensions for other browsers.

  • note that this above step if for debug HTML + CSS stuff, nothing about JS yet. And please, your site should NOT display the same in every browser, on every screen. It is just impossible. A great looking at a 22" screen, will not fit into a iPhone, and will get ridiculous on a 42" LCD TV. Fluid/Elastic layouts are NOT the solution. Read about media queries if you are interested, but I even recommend serve different pages and sheets for different medias. MAKE IT FUNCTIONAL.

  • Then come scripting. Jquery is a great framework, but I don't use it. It is not all that cross browser they say. It uses browser detection. I recommend using feature detection. Google for it "javascript feature detection". Plus, if you made above steps right, implements javascript would be much more easy and light.

  • retest everything according to your intended audience.

Dave