Sorunla ilgili açıklamanız kod tabanına ilişkin ayrıntılı bir fikir vermese de, sorununuzun iki kat olduğunu güvenle söyleyebilirim.
Doğru testleri yazmayı öğrenin.
Neredeyse bin testin olduğunu ve 120 projen olduğunu söylüyorsun. Bu projelerin yarısının test projeleri olduğunu varsayarak, 60 üretim kodu projesine 1000 test yaptırdığınızı varsayalım. Bu size yaklaşık 16-17 test pr verir. Proje !!!
Muhtemelen bir üretim sisteminde yaklaşık 1-2 dersi kapsamam gereken testlerin miktarıdır. Bu nedenle, her bir projede sadece 1-2 sınıfınız yoksa (bu durumda proje yapınız çok ince taneli) testleriniz çok büyüktür, çok fazla zemin kaplar. Bunun TDD'yi doğru şekilde yaptığınız ilk proje olduğunu söylüyorsunuz. Bir deyiş, sunduğunuz sayılar, bunun böyle olmadığını, TDD özelliğini yapmadığınızı gösteriyor.
Doğru testleri yazmayı öğrenmeniz gerekir, bu muhtemelen ilk önce kodun nasıl test edilebilir hale getirileceğini öğrenmeniz gerektiği anlamına gelir. Bunu yapmak için takımın içindeki tecrübeyi bulamazsanız, dışarıdan yardım almanızı öneririm, örneğin ekibinize test edilebilir bir kod yazmayı öğrenmek için 2-3 ay boyunca ekibinize yardımcı olacak bir veya iki danışman şeklinde minimal birim testleri.
Karşılaştırma yapmak gerekirse, şu anda üzerinde çalışmakta olduğum .NET projesinde, 10 saniyeden daha az bir sürede yaklaşık 500 birim testini çalıştırabiliriz (ve bu, yüksek özellikli bir makinede bile ölçülmedi). Bunlar sizin figürleriniz olsaydı, bunları sık sık yerel olarak çalıştırmaktan korkmazsınız.
Proje yapısını yönetmeyi öğrenin.
Çözümü 120 projeye böldünüz. Bu benim standartlarım gereği şaşırtıcı miktarda projedir.
Bu nedenle, aslında bu kadar projeye sahip olmak mantıklı geliyorsa (ki bunu yapamayacağımı hissediyorum - ancak sorunuz bu konuda nitelikli bir değerlendirme yapmak için yeterli bilgi sağlamıyor), projeleri daha küçük bileşenlere ayırmanız gerekir. ayrı ayrı oluşturulabilir, sürümlendirilebilir ve dağıtılabilir. Bu nedenle bir geliştirici test paketini çalıştırdığında, yalnızca şu anda üzerinde çalıştığı bileşenle ilgili testleri çalıştırması gerekir. Derleme sunucusu her şeyin doğru şekilde entegre olduğunu doğrulamaya özen göstermelidir.
Ancak, bir projeyi birden fazla bileşene ayırmak, ayrı ayrı kurmak ve dağıtmak, tecrübelerime göre çok olgun bir geliştirme ekibi, ekibinizin olduğu hissine kapıldığımdan daha olgun bir ekip gerektiriyor.
Ancak her halükarda, proje yapısı hakkında bir şeyler yapmanız gerekiyor. Projeleri ayrı bileşenlere ayırın veya projeleri birleştirmeye başlayın.
Gerçekten 120 projeye ihtiyacınız olup olmadığını sorun.
ps NCrunch'u kontrol etmek isteyebilirsiniz. Testinizi otomatik olarak arka planda çalıştıran bir Visual Studio eklentisidir.