Я полагаю, что в «Эффективной работе с устаревшим кодом» он сказал, что если ваш набор тестов займет больше пары минут, это слишком сильно замедлит работу разработчиков, и тесты начнут игнорироваться. Похоже, вы попали в эту ловушку.
Работают ли ваши тесты с базой данных? Тогда это, скорее всего, ваш самый большой источник проблем с производительностью. Как правило, тестовые случаи никогда не должны делать ввод / вывод, если это возможно. Внедрение зависимостей может позволить вам заменить объект базы данных фиктивными объектами, которые имитируют часть базы данных вашего кода. Это позволяет вам тестировать код , не беспокоясь о правильности настройки базы данных.
Я настоятельно рекомендую Эффективно работать с устаревшим кодом от Michael Feathers. Он обсуждает, как справиться со многими головными болями, с которыми вы, похоже, сталкиваетесь, без необходимости рефакторинга кода сразу.
UPDATE:
Еще одна возможная помощь - что-то вроде NDbUnit. Я еще широко не пользовался, но выглядит многообещающе: http://code.google.com/p/ndbunit/