Browser testing on steroids: Running IE 6, 7 and 8 simultaneously on Windows 7

I use Windows 7 on my development machine. It works great, and I've especially come to like the deep integration features provided by Windows Virtual PC, as I'll show you in this blog post. They have been a tremendous time-saver when it comes to testing Veturanto, the website I am currently working on. I usually test the website using Firefox 3.5, Chrome 3, IE 6, IE7 and IE8.

Firefox, Chrome and IE8 all run natively on Windows 7, no problem there. But what about IE6 and IE7? These guys only run on XP (IE 6 & 7) and Vista (IE 7). Are we out of luck? Not quite. First we have virtualization to the rescue and second we don't even need our own licenses as Microsoft freely provides VHDs of both these browsers both on XP SP3 and Vista to run tests on. (Note that they do expire every few months, but Microsoft always provides new ones in time.)

This post shows how to use them most effectively to deeply integrate IE 6 and IE 7 into Windows 7.

So let's get to work!

For this to work we will need the following things:


Now that we have all that ready, let's get started. The following steps describe the IE 6 installation, simply repeat them with the other VHD to install IE 7.


1. Select the IE6 on XP SP3.vhd file and click Create virtual machine to create a new VM

Create VM

2. For simplicity's sake, name it to match the VHD

VM Name

3. Leave the memory to its default setting of 512 MB

VM Memory

4. Associate the VHD with the VM and click Create

VM VHD

5. Select the VM (IE 6 on XP SP3.vmcx) and click Settings to mount the XP CD

XP CD


6. Launch the VM by clicking Open and watch XP boot

Open VM


7. By default a user IETest with Administrator privileges gets created. Assign it a password (Start -> Control Panel -> User Accounts -> IETest -> Create a password) Pick IETest again to keep it simple.

Create Password

8. Update the integration components, and let the installer reboot the VM when it needs to.

Upgrade Integration

9. Make sure that at the end of the installation, the checkbox "Download updates required for running virtual applications from your PC" is checked before clicking Finish.

Download checkbox

10. Download and run the RemoteApp installer. The VM will restart at the end after you click Finish.

Remote App


 11. Log in and click Enable Integration features

Enable features


12. When prompted for credentials, click "Use another account" and enter IETest/IETest and don't forget to tick the checkbox

Credentials

13. Right click Start and select "Open all users", go into Programs and drag the IE icon from the desktop into this folder.

IE in XP

14. If you now go back to the Windows 7 Start menu, you will magically find the IE icon again under
All Programs -> Windows Virtual PC -> IE 6 on XP SP3 Applications

IE in Win7


15. Repeat for IE 7 :-)

16. (optional) Pin the icons to the taskbar next to the IE 8 icon, so that they are just only click away.
pin


And finally there you have it, IE 6, IE 7 and IE 8 all running at the same time on Windows 7:
IE 6 7 8

Hope you enjoyed it and that it improved your life as much as mine when it comes to testing in different browsers !

 


Axel

About Axel Fontaine

Axel Fontaine is the founder and CEO of Boxfuse the easiest way to deploy JVM and Node.js applications to AWS.

Axel is also the creator and project lead of Flyway, the open-source tool that makes database migration easy.

He is a Continuous Delivery and Immutable Infrastructure expert, a Java Champion, a JavaOne Rockstar and a regular speaker at many large international conferences including JavaOne, Devoxx, Jfokus, JavaZone, QCon, JAX, ...

You can follow him on Twitter at @axelfontaine

 

Architecting for Continuous Delivery and Zero Downtime

Two day intensive on-site training with Axel Fontaine

Upcoming dates

Iasi, Romania (May 10-11, 2017)
Oslo, Norway (Oct 16-17, 2017)

« Transparently supporting HTTP HEAD requests in Java and Spring MVC
Taming the beasts: Getting Ubuntu Server 9.10 to run in Virtual PC on Windows 7 »
Browse complete blog archive
Subscribe to the feed