Meskipun uraian masalah Anda tidak memberikan wawasan menyeluruh tentang basis kode, saya pikir saya bisa mengatakan bahwa masalah Anda aman dua kali lipat.
Belajar menulis tes yang tepat.
Anda mengatakan Anda memiliki hampir seribu tes, dan Anda memiliki 120 proyek. Dengan asumsi bahwa sebagian besar dari proyek-proyek tersebut adalah proyek uji, Anda memiliki 1000 pengujian hingga 60 proyek kode produksi. Itu memberi Anda sekitar 16-17 tes pr. proyek!!!
Itu mungkin jumlah tes yang harus saya ikuti sekitar 1-2 kelas dalam sistem produksi. Jadi, kecuali Anda hanya memiliki 1-2 kelas di setiap proyek (dalam hal ini struktur proyek Anda terlalu halus) tes Anda terlalu besar, mereka mencakup terlalu banyak tanah. Anda mengatakan ini adalah proyek pertama yang Anda lakukan TDD dengan benar. Katakanlah, angka yang Anda tunjukkan menunjukkan bahwa ini bukan masalahnya, Anda tidak melakukan properti TDD.
Anda harus belajar menulis tes yang tepat, yang mungkin berarti Anda harus belajar bagaimana membuat kode dapat diuji di tempat pertama. Jika Anda tidak dapat menemukan pengalaman di dalam tim untuk melakukan itu, saya sarankan untuk menyewa bantuan dari luar, misalnya dalam bentuk satu atau dua konsultan yang membantu tim Anda selama 2-3 bulan untuk belajar menulis kode yang dapat diuji, dan sedikit tes unit minimal.
Sebagai perbandingan, pada proyek .NET yang sedang saya kerjakan, kita dapat menjalankan sekitar 500 unit tes dalam waktu kurang dari 10 detik (dan itu bahkan tidak diukur pada mesin spec tinggi). Jika itu adalah angka-angka Anda, Anda tidak akan takut untuk menjalankan ini secara lokal sesering mungkin.
Belajarlah untuk mengelola struktur proyek.
Anda telah membagi solusi menjadi 120 proyek. Itu menurut standar saya jumlah proyek yang mengejutkan.
Jadi jika masuk akal untuk benar-benar memiliki jumlah proyek (yang saya rasa tidak - tetapi pertanyaan Anda tidak memberikan informasi yang cukup untuk membuat penilaian yang berkualitas dari ini), Anda perlu membagi proyek menjadi komponen yang lebih kecil yang dapat dibangun, versi, dan digunakan secara terpisah. Jadi ketika pengembang menjalankan unit test suite, ia hanya perlu menjalankan tes yang berkaitan dengan komponen yang sedang dikerjakannya saat ini. Server build harus memastikan bahwa semuanya terintegrasi dengan benar.
Tetapi memisahkan proyek dalam beberapa komponen, membangun, versi, dan digunakan secara terpisah membutuhkan pengalaman saya tim pengembangan yang sangat matang, tim yang lebih matang daripada saya merasa bahwa tim Anda adalah.
Tetapi bagaimanapun juga, Anda perlu melakukan sesuatu tentang struktur proyek. Baik membagi proyek menjadi komponen yang terpisah, atau mulai menggabungkan proyek.
Tanyakan pada diri Anda apakah Anda benar-benar membutuhkan 120 proyek?
ps Anda mungkin ingin memeriksa NCrunch. Ini adalah Visual Studio plug-in yang menjalankan pengujian Anda secara otomatis di latar belakang.