Q:

Developing for XP, Win 7 and Vista - do I need to test Vista separately?

I am currently developing a service app on Windows XP with VS 2010 and the target is to XP, Vista and 7.
The service run as admin on the installed computer and as such I don't see many problems with user controls but I do know there are noticable differences between each listed OS.
If I develop
   it on Windows XP and test it mainly
   on Win XP and Win 7 should I consider
   testing it on Vista too, or are the tests
   done on Win 7 will most likely be
   comparable or the same as on Vista?
   Are there differences that would require me to have a Vista machine to test on as well?

A:

If you're releasing this software to the public and you claim to support XP, Vista and 7, then you should test on Vista. It's true that Vista and 7 are similar operating systems. It's also true that the majority of the changes to running services occurred between XP and Vista. But this doesn't absolve you of the responsibility to test each platform you support.
You should consider defining a list of officially supported operating systems.
For example, you might 'officially' support:
Windows 7 SP1 32/64
Windows Vista SP2 32/64
Windows XP SP3
Unofficially any variant of XP, Vista or 7 should work, but these are the operating systems you guarantee to your customer will work. Of course the only way you can make this guarantee is by testing on each of these operating systems ;).

