Run different OS versions in a virtual machine. I currently have XP and Win 7 both running on my test box at work, which cover IE7 and IE9. IE9 has fairly good testing tools for IE8-7 on Win7, but the IE7 / XP combination isn't 100% accurate to the "native" version.
I enable web sharing and test on my wife's old Win XP laptop for IE7 and her new laptop for IE8/9 or whatever happens to be on it. Can also test older versions of Firefox etc this way. Obviously this depends on you being able to set up an equivalent server environment to that on the public server.