2009-09-15 20 views
12

Resharper Unit Test Runner, Nunit-konsol veya nunit gui'den önemli ölçüde daha yavaş çalışır. Örneğin, 3800 testi, nunit-konsol aracılığıyla 60 saniyeden daha kısa sürüyor, ancak aynı testler, Yeniden Eşleştirme Ünitesi Test çalıştırıcısında 5 dakikadan fazla sürüyor. Neden böyle önemli bir fark var?Resharper Unit Test Runner NUnit konsolundan önemli ölçüde daha yavaş.

Test kod tabanımız önemli ölçüde büyüdüğünden, bu gerçekten bizi yavaşlatmaya başlıyor. Başka benzer problemler yaşandı mı? Bununla nasıl başa çıktın?

Resharper Visual Studio tümleştirmesi gerçekten güzel, ancak başka bir şeye başvurmamız gerekebilir.

+2

Benim deneyimlerimde * çoğu şey * Resharper kullanırken gerçekten daha azdır, çünkü bu gerçekten harika bir eklenti ... Jamie Cansdale's TestDriven.NET için mükemmel bir eklenti ... –

cevap

14

Aynı sorunu yaşadım ve TestDriven.Net'a geçiş yaptım, hızlı yıldırım.

+1

+1. Süper bir yazılım parçasıdır. Bununla birlikte, daha küçük test takımlarını çalıştırırken Resharper'ın test yolcusunu tatmin edici buluyorum. –

+0

vs2010 dahili test koşucusu da gerçekten hızlı. Çok kötü, nunit ile çalışmaz :( – andrecarlucci

+1

Sadece benim 2cents, ama TestDriven.Net gelen, bu tür bir şey için NCrunch da var, ve, IMHO, yeniden sağlayıcı yanında bir araç olması gerekir. – pms1969

8

Resharper'ın amacı, Visual Studio'nun içinden tüm bir test paketini yürütmek için bir yardımcı program sağlamaktı. Bu, genellikle, sürekli entegrasyon araçlarını çalıştıran bir derleme sunucusunun veya test paketi sunucusunun amacıdır (CruiseControl'den başlatılan NUnit gibi)

Resharper ünitesinin test koşucusu, belirli bir birimin teşhisi ve yerine getirilmesi için küçük ünite testleri gerçekleştirerek en iyi şekilde çalışır. kodun Stüdyo içinde rahatça çalıştırılabilen, hata ayıklanan, tekrarlanan ve hızlı bir şekilde oluşturulabilen ve test edilmeden bekletilen test kitleri oluşturmanızı sağlar.

Tüm test paketini çalıştırmak için bir derleme sunucusundan yararlanmanızı öneririm.

+8

testleri çalıştırmak için bir yapı sunucusu, ancak bizim politikamız burada değişikliklerin yapılmasından önce yapının bozulmaması için elimizden gelenin en iyisini yapmaya çalışmaktır. Bu nedenle, genellikle bir ünite testinden önce tüm ünite testlerini çalıştırıyoruz. – jamesaharvey

+0

R # 'nin test koşucusu, hızlı bir şekilde çok kullanışlıdır Yapılandırmayı kırmaktan kaçınmak için, TeamCity'nin Kişisel Oluşturma veya Önişlem seçenekleri gibi bir şey kullanabilirsiniz. Bkz. http://www.jetbrains.net/confluence/display/TCD4/Personal+Build İsteğe bağlı olarak, NUnit'i Araçlar'dan çalıştırın. – TrueWill

+6

Tüm test paketini çalıştırmak için bir inşa sunucusundan faydalanmak korkunç bir fikirdir.Çok sayıda kırık yapı üretir ve sürekli dağıtımı tamamen geçersiz kılar Güncelleme, tümünü test et, sonra da taahhüt et. – andrecarlucci

İlgili konular