birim testlerinin maliyeti
Birim test bu son hafta benim için bir yinelenen tema; StackOverflow ve diğer forumları ve test bahsediyorum arasında ben iki devam eden projeler için yazmak, Ben birim testleri gerçek maliyeti hakkında birkaç soru sordu.
Bu özellikle Thomas Brandt bir makale (Alman: “der TDD (benim) Pratik - dilek ve gerçeklik”) o beni ciddiye düşündürdü. Brandt yazısında teori ve pratiğini Test Driven Development arasında oldukça iyi gerçekten bu körfez açıklanır. Noktası boş, Aksine, TDD ve ilkelerine uyar;
Ben ilk o Test Driven Development söylemek gerekir, Özellikle "ilk test" ilkesine, Bir daha ziyade “seksi” geliştirmek. Kesinlikle yazılım mimarisi artırabilir ve bazı yaparak bizi engeller (küçük) hataları.
— T hakkında görece özgür çeviri. Brandt
O yüzden güçlü bir araç olarak görmektedir TDD – en azından salt akademik. Ama hemen sonuç bir şüphe;
Soru basitçe: ne de fiyat?
belirtildiği gibi, T hariç. Brandt ve ben, Birçok kişi daha sormak gibi görünüyor, ve en sık sorulan soru aşağıdaki gibidir: birim testlerinin kullanımı o gerçekten iyi bir yazılım yok bu mu, ve yatırım çabaları gerçekçi olmasıdır?
Kondense, soru basit bir özetlenebilecek:
Bu bana ne kadara mal birim testleri?
Sık sık soru içerir, o kim birim testleri de sürekli uygulamak için pahalı olduğunu düşünüyorum yükseltir. Ben teorik ideal ötesinde toplam test kapsamı değeri hakkında bir tartışma vardı hatırlıyorum. Bildirilen çabaları dedim sağlamak “değil” zaman.
Bence bugün itibariyle bütün bu soruların sadece kötü sorulur, bunu bilmiyor, çünkü birim test maliyeti önemlidir, daha fazla:
Nasıl birim testlerin ihmal ödeme yapmak?
Ve burada benim cevap, somut bir örnek kullanılarak hazırlanmıştır;
benim şimdiki projelerinden biri dağıtılmış bileşenler çok sayıda yer. Ben taslak bir hata keşfetti, hangi Refactor iki sınıf için beni zorladı. Tüm beni aldı 1 saat. birim testleri Launch? Hakkında 30 ikinci. 30 saniye, bazı davranışları olarak planlanan olmadığını keşfetti. Bu düzeltmeler için beni yaklaşık 20 dakika sürdü. testleri 45dakika hakkında bana maliyeti Yazma.
Bilanço yaklaşık iki saattir.
birim testleri olmadan, Herhalde hemen hataların bazıları fark olmaz. Ben olurdu 1 zaman refactoring, üzerinde bir veya daha az belirlenebilir, kesinlikle birkaç gün yayılmış, sorunları değiştirirken fark edilmeden gidip düzeltmek için. bu kez bir saat ötesine gider olasılığı oldukça yüksektir (debug “el”, çoklu iş parçacıklı uygulamalar vb koşullarını yeniden…).
Benim bölüm için, Ben belirli bir zaman hesaplamak için bulmak (yazılım gerçekçi bir kısmını kapsayan sahip testleri – değil 100%) daha ilginç karanlıkta o navigasyon uygulandığı gibi.
Deneme!



