This question is for developers who write tests with their code and have accumulated a regression tests suite. How much time do you spend running regression tests on your IDE, i.e. before check-in?
I will run the tests associated with the classes that have been changed before I check-in. In most cases these test will run in < 10 seconds.
To run the complete test suite I rely on the Hudson continuous integration server. I don't see the point of running all tests locally as I will know within an hour at most whether my changes have broken someting else.
It depends on the scope of changes, but sometimes I run a battery of tests which takes an hour to finish, and is still far from providing complete coverage.
I would generally run all my tests once per day or so, as, in one job, I had about 1200 unit tests, several of them regression tests from duplicating bugs.
I would just run the tests that were affected by the new change.
I was a bit different than many as I had tests that would allow me to compare different ways to do something, so I could see if my change actually led to a performance increase, for example.
My tests didn't have any mocks, as they were developed over about 8 yrs, starting in 1999, so there were many legacy tests. :) It would take about 4 hrs to run all of them, but that was because some of them would generate encryption keys for some functional tests.