Browser Testing

From CSS Discuss

Jump to: navigation, search

In the early summer of 2002 I asked the css-discuss mailing list:

"The mantra of "test in many browsers" is oft heard and repeated throughout the land. Okay, I'll bite. How? ... What do you people do?"

Many useful responses were received, which were summarized and posted to the list. At which point even more useful replies ensued. Seeing that this could be a never ending process, this wiki topic was started. Please add/correct/refine at will.


-- Matt Wilkie

See also Which Browsers for deciding which browsers to use for development and testing.

Contents

How do you test in many browsers?

To which the good list denizens unanimously answered "USE MANY COMPUTERS". There appear to be four main routes to accomplishing this (in no particular order):

  • use software which allows you to turn one system into a farm of virtual PCs.
  • maintain a bank of computers dedicated to testing, or pay someone else who does
  • a buddy system of friends and colleagues (see Site Check Please )
  • do your best and wait for the guinea pig users to speak out

If you must use only one Windows PC, non-Java Opera, Mozilla, Netscape 4 and Internet Explorer 6.0 reportedly play nicely together. A single Mac OSX can run Safari, IE 5/Mac, Camino/Firefox/Mozilla/, Sea Monkey, Omni Web, iCab, Opera, and "native" unix based browsers (OSX is based on unix) including lynx.

The Details

Turn your computer into a Virtual PC farm

  • Use VMWare or Connectix Virtual PC MS Virtual PC to install as many operating systems and their complementary browsers on your machine as memory and disk space allow. VMWare runs about $300usd and Connectix $200.
  • On a PC, install multiple OS's [Windows 95 thru XP, Linux] on separate partitions and reboot for each browser test. Be careful with this as some versions of Windows are not very careful on install when it comes to respecting pre-existing operating systems. Read up on it first.

-- Cristian Necochea, James Aylard, Chris Cothrun

-- Tobias Maier

Use many different computers

"...I develop on MacOS9.2 and use my girlfriend's Mac for OSX ... I have bought 3 PC's to use primarily for testing. Yes, I wasted all that money just for testing. ... I feel that I have paid myself back for the investment many times over.

Don't throw out or even upgrade those old boxes! Shove 'em in the broom closet with their crappy old browsers and a power and network feed. Monitors, keyboards & rodents are optional if configured appropriately. Install VNC on 'em, which allows one to use remote systems from the comfort of your main workstation, and periodically wake them for a little feeding frenzy now and then.

-- Mikhail, Matt Wilkie

Use many browsers on a single computer

You can run multiple versions of all browsers (within their platform) except IE Win (but even that's hackable). Just choose Custom Install and put them in their own directories. The only caveat is you can only run one Netscape at a time; you have to close 4.08 before you open 4.8. same with the IE Macs.

So: you need multiple OS to deal with the three main platforms (Windows, Mac, *nix), and to deal with IE in Win.

  • evidently there is some difference between mac OSX and OS9. and possibly slight difference between the various Windows OS's. This is something that could use more documentation.

Windows

  • Opera (non-Java) is well behaved. It won't change any of your system settings, or set itself as your default browser or associate any icons unless you tell it to.
  • Netscape 4 is only slightly more problematic. Use Communicator 4.8. Be sure to select "custom install" and uncheck every box you find. On first load it up it will ask to become your default browser, but a firm refusal and a click of the "never ask me again" button and you should have tamed the beast.
  • Netscape 6/7 and 4 can co-exist on Windows if each is installed to its own directory - provided you don't run more than one 4 or 6/7 session at the same time, as they share profiles.
  • Netscape 8 is based upon Firefox, but is said to use separate profiles from Firefox, and thus both could could be run simultaneously. Firefox does not share profiles with Sea Monkey or Mozilla .
  • Both Sea Monkey and Mozilla will attempt to share profiles profiles with each other and with Netscape 6/7, and so should not be run at the same time unless using the special environment used by Gecko programmers.
  • IE for Windows (not Mac), alone among the browsers, normally lets you install only one version. This is a real problem for the individual. With some small hacks, it is possible to run multiple versions of IE on one Windows install. Information on how to do this is available at:Multiple IEs in Windows
  • If you have IE6 you can download stand-alone versions of IE which will run alongside IE6. NT/2000/XP only. The files are about 3Mb each. Just extract to a folder and run IEXPLORE.EXE from there.
  • Internet Explorer archive at Evolt


Mac

A single Mac OSX can run Safari, IE 5/Mac, Camino/Firefox/Mozilla Sea Monkey , Omni Web , iCab, Opera, and "native" unix based browsers using Fink.

Using Fink, it is possible to set up an Xwindow system on a Mac OS X. With this setup it is possible to do site checks in the main Linux browsers (Konqueror/Epiphany/Moz) without needing a Linux box.

This takes a fair bit of time, patience and some basic unix hacking skills, but I now have an environment set up on my ibook that gives me access to Konqueror, numerous Mozilla variants (Moz X11 Darwin, Moz Mac PPC OS X, Netscape6/7, Chimera and Galeon) iCab, Omni Web , IE for Mac, NN 4.7 and about half a dozen text based browsers. --Dylan Foley

*nix

A single machine (at least for Linux, but presumably all Unices) can easily run Gecko (Firefox, Sea Monkey , Epiphany, Mozilla, Galeon & others), Opera, Lynx, Links, Dillo, w3m, Konqueror, Netscape Navigator 4.x, Netscape 6.x, and Netscape 7.x, and by running Wine, Windows programs like Internet Explorer. It can also (using wget) emulate a spider.

Netraverse's Win4Lin or VMWare both work well with IE6. Wine does too, but it takes some messy configuring. One of the easiest ways to get IE6 working on a linux box is to get WineX from Transgaming and then, using Point2Play, install the IE6 installer executable as if it were a game. It costs $15 for a subscription, and is probably a lot cheaper and more efficient than dual-booting. -- Dan Cook

Resources

See Evolt for a public archive of (nearly) all known web browsers.

See IEs4Linux for the easy way to run IE under Wine.

A List Apart has an article on building a cross-platform web testing station.

-- Simon Willison, Owen Briggs, Chris Cothrun, Lucas, Adrian Simmons, Brandon Oto


Online testing

Fee For Service

...larger development companies have whole banks of testing machines (and QA engineers to match). There's also a healthy biz in London of companies who JUST do testing... Google search

The problem with outsourcing your testing is that the turn-around time is really slow. When I'm at the studio ... I can "play musical chairs" ... and get a lot more work done. This may not seem like an ideal method, but for me it is." -- Mikhail

  • http://www.CrossBrowserTesting.com - provides live testing via a remote VNC connection across Windows, Ubuntu, and Mac OS on many different browsers. You can check out not only your layout, but, since it is live, your javascript and navigation. 5 minute testing sessions are free, but they prioritize paid customers.
  • http://www.netmechanic.com/browser-index.htm - a pay service but not a bad price
  • http://www.browsercam.com/ - creates screen captures of your web pages loaded in nearly any browser, and on any several operating systems (no *BSD's for example). "Prices start at a Buck a URL" (I'm assuming thats USD) they say satisfaction is guaranteed. A 24 hour trial is available and the results can be made public via URL.
  • http://www.danvine.com/icapture/ - creates free .png screenshots in OS X and Safari. "iCapture and ieCapture are free services developed by Dan Vine and supported by You the users."

Public Service

A great initiative: browsershots.org The idea behind this project is to distribute the work of making browser screenshots among community members. Everybody can add URLs to the job queue on a central server. Workers use a small program to automatically make screenshots of web pages in their browser and upload the results to the server. See also: Mission Statement. Erik Visser

Matt Wilkie mentioned an online Lynx viewer, or also this one Owen Briggs says he saw similar sites for other browsers but doesn't have any links, and Chris Cothrun had this idea which I soundly second:

... I've played around with VNC - a cross platform remote desktop program[0] a bit, what if kind soul donated a machine or two to serve as a publicly available testing platform that someone could use over the internet. They could log into the machine, check their site, maybe take a screenshot and then go off to fix things or ask the list for help. Of course, that would be a bit of a security hazard, it could be minimized somewhat by limiting outgoing access, locking down the OS so that installing other programs was difficult and limiting who has access to it in the first place. It would be a bit of work but be a great tool for everyone that doesn't have lots of computers lying around or the time and skill to partition hard drives and deal with open sourced boot managers. Any thoughts?

Resources

For Palm OS 5, you might want to try: http://www.palmos.com/dev/tools/simulator/

Pocket PC (iPAQ etc) emulation is available from http://www.microsoft.com/mobile/downloads/emvt30.asp This is a monster download for developing apps on hand-helds, but it does contain a working emulator. Requires W2K or XP. Install, then run [your install path]\Windows CE Tools\bin\cectlmgr.exe. Choose Pocket PC 2002 emulation, then, in the emulator itself, change settings | network connections to Internet. The emulator pops offputting error messages on loading, but works nonetheless for real-time live emulated web browsing piggy-backing off your PC's web connection. Clever stuff.



Category CSSTesting

Personal tools