2010-06-27 18 views
8

Kod kapsamı yardımı ile geliştirme sürecine başlamaya başlamak üzereyim ve test sürüşü gelişimine nasıl uyum sağladığını merak ediyorum.TDD ve Kod Kapsamı

Kod kapsamı daha sonradan kontrol ediliyor mu? sürecinizle yaptıkları, işlevsellik

  • Testi çalıştır Uygulamak
  • başarısız emin olun, işlevsellik
  • Testi çalıştır uygulanabilmesi için bir test yaz

    1. gibi bir şey gider mi onlar
    2. Yazma geçmesi emin daha% 100 kadar işlevselliği için testler (veya yakın) kod kapsamı

    elde Yoksa çok sonlandırmak bir kod kapsama çalıştırırım edilir Çok sayıda fonksiyonel parça uygulandı ve sonra geri döndü ve% 100 kapsamaya doğru çalışıyor mu? I is düşünebilirsiniz

    Üçüncü seçenek bile işlevselliğini uygulamadan önce% 100 kapsama doğru çalışıyoruz.

    Bunlardan hangisi daha yaygındır ve faydaları nelerdir?

  • cevap

    12

    % 100 kod kapsamı elde edilene kadar test yapmazsınız. TDD'yi takip ediyorsanız, bir test tarafından gerek duyulmadan yazılan no kodunuz vardır, bu yüzden her zaman% 100 kapsama alanı yakınında olmalısınız. Tüm testler geçene kadar

    Bunun yerine, testler yazabilir ve gerekli tüm testler yazılı edilene kadar. Bu, gerekli olan kodun yazıldığı anlamına gelecektir, çünkü sadece bir testin gerektirmesi durumunda yazılı bir kodunuz olacaktır. Eğer testleri geçmek gerekmez herhangi bir kod geliştirmek olmadığı yeni kod geliştirirken

    +1

    Evet, son zamanlarda TDD başladı ve bittikten sonra birkaç testleri ve kod yazmadan bulmak için sürpriz oldu sınıfları, kullandığımız kod kapsama aracı% 100 kapsama bildirdi. Kapsam hakkında düşünmek zorunda değildim, sadece geçmesi gereken bir test için gerekli olan kodları yazdığımdan emin oldum. Yanlışlıkla çok fazla kod yazarken bulursam, rastgele bir şekilde parçaları yorumlamaya çalışırdım ve hiçbir test aniden başarısız olmaya başlamazsa, yeterince test yazmamış olduğumu biliyordum. – SCFrench

    1

    TDD ile hemen hemen her zaman% 100 kapsama yakın olmalıdır. Sadece kodun çok basit olduğunu düşündüğünüzde (C# 'da otomatik bir özellik gibi) bir sınava gerek duymuyorsanız, özel olarak kapsanmayan bir kodunuz olmalıdır. Refactoring yoluyla, bazen gerekli olmayan blokları tanıtabilir veya kodu beklenmedik şekillerde değiştirebilirsiniz, böylece kazara test edilmemiş kodun yanlışlıkla girilmediğinden emin olmak için bu noktada kapsama kullanmak isteyebilirsiniz. Bunun dışında, aynı sebepten ötürü düzenli bir kontrol olarak kullandığımı ve kapsama analizini periyodik olarak yaptığımı söyleyebilirim. Disipliniz bozulduğunda ve TDD tarzında çalışmayı ihmal ettiğinizde çok yararlı olabilir.

    0

    Aslında tesadüfen karşılanan kod kullanan bir sınava sahip olabileceğinizi unutmayın. Özellikle TDD'yi başlatırken, bu konuda dikkatli olmanız gerekir. Oh, bu işlevin arasındayım ve biliyorum ki, bu küçük küçük ince akşam yemeğini nane ekleyeceğim, çünkü başka bir nane olmasın. Bilmeden önce bir dizi test edilmemiş kodunuz var.

    Yaz Testi: Yaz Kodu Fail: Refactor geçirin: Pass

    Goto üst

    İlgili konular