This article proposes a good idea to make CI faster. Use code coverage information for tests to determine which tests should be run when code is committed. Running all tests on a project can take a long time, even if you split out some long running tests to run on a "not per-checkin" interval.
Don't you hate committing code and then waiting hours to find out you broke the build? Even worse is when other people commit code at a similar time to you, and you get dragged into the 'who broke the build' witch-hunt by pure circumstance.
If your build times are blowing out because of long test runs (greater than ten minutes), then you are most likely suffering from CI (Continuous Integration) latency and the above problems are real problems for you and your team.