<p>I'm running Visual Studio 2008 with the stuff-of-nightmares awful MS test framework.  Trouble is that it's sending my CPU to 100% (well 25% on a quad-core).</p>

<p>My question is why can't Visual Studio run on more than one core?  Surely M$ must have a sufficient handle on threading to get this to work.</p>

I have VS2008 running on all 4 CPUs. Just set this environment variable / project flag.
/MP
(It can be set in C/C++ Settings, Advanced. In project settings)
Edit: The MP flag can also accept a number, e.g. /MP2 which means it will only run on 2 cores. Leaving it as just /MP means it will run on the maximum amount of cores.
Edit2: The MP flag is probably for the compiler only.