There are occasions where you need multiple versions of SQL Server running at the same time and you may not have sufficient hardware to run them on separate machines.
The traditional approach to this is to run an instance of each version, in fact I have one demo rig which has an instance of SQL Server 2000, 2005, and 2008 all running on Windows Server 2008 it’s not supported but hey it works and allows je to test all my upgrade scenarios.
However if you are worried about versions of some of the common components (more information on this is on TechNet here) then a better way of isolating them is to virtualise them using Hyper-V. This also has a number of other benefits:
Of course this approach does have licensing implications if you are in production and for that you need to understand how the different editions of SQL Server are licensed here. You might still want to take advantages of using a virtual machine to test the configuration of a production box.
So in my opinion hyper-v is the answer what’s the question?