The build process should not take too long to complete, especially the development build. I have seen many developers don't do it frequently because it takes more than say five minutes to complete. This is why they prefer to do it only over the coffee breaks or lunch time and I am sure there is no need to highlight why this is a BAD practice in an agile development process.
Those bloody unit tests" I can hear! Let's blame that web service call to the ERP application that takes more than a minute to complete. But why should another developer (who may not have any interest in that web service call) wait for a minute every time he performs a build? As the name suggests, unit tests are supposed to test the units, not the business processes or the whole system. A good unit tests should perform very fast, that is... in fraction of a second). This is the only way to convince developers to perform a build whenever they want to compile their application.
<!-- I will give you a hint for assessing whether your build process is taking too much time. As you may know, every Visual Studio 2005 project file is nothing other than an MSBuild script, so it can be customised to perform additional steps. Assume that you are going to add a step to the MSBuild script to perform the unit tests. Now the question is what is the maximum time you can wait for your application to be compiled, built and run before you start panicking? -->
This doesn't mean that we shouldn't have more comprehensive tests, the point is that those tests are not "unit" tests. You can add different tasks to your build script to reflect different types of testing, based on the context. The unit tests will run every time the build script is run, but developers should have the option of performing more comprehensive tests if they want to.
One could argue that a lightweight unit test does not necessarily cover all of the test cases. Correct, but performing a lightweight unit test is better than not doing it at all, because of its long duration. Also don't forget that the server build can be as comprehensive as you like it to be. The build servers have nothing to do apart from doing the build, so there is no harm in running all of the tests (including unit, system and integration tests) as part of the server build.
Even if the complete server build process takes say 20 minutes, it is better than running it on development machines over the coffee breaks, unless you have more than 8*3 coffee breaks at work! - Is your company is recruiting? ;) - . In such process, the maximum duration between producing and identifying a bug is 20 minutes, which is acceptable in most scenarios.