SORU
6 Aralık 2008, CUMARTESİ


'taklit arasındaki fark ne, dalga geçiyor ve stubbing?

Bu şartları nasıl kullandığımı biliyorum, ama eğer tanımları kabul olup olmadığını merak ediyorumnumara,alayvestubbingbirim testleri için mi? Testler nasıl bu tanımlıyorsunuz? Her kullanım durumları açıklar.

Onları kullanıyorum.

Sahtebir arabirimi uygulayan bir sınıf ama sabit veri ve mantık içerir. Sadece "" veya "kötü" veri uygulanmasına bağlı. iyi döner

Alaybir sınıf uygulayan bir arabirim ve yeteneği için dinamik olarak ayarlanmış değerlere dönüş/istisnalar atmak için belirli yöntemler ve sağlar için belirli yöntemler var oldu diye aramadı.

Saplama: Yöntem/adı "değil," olduğunu doğrulamak için yeteneği sağlamaz dışında sahte bir sınıf gibi.

Alay ve koçanları elle oluşturulan veya alaycı bir çerçeve oluşturulabilir. Sahte sınıflar el tarafından oluşturulur. Alay öncelikle benim sınıf ve bağımlı sınıflar arasındaki etkileşimleri doğrulamak için kullanıyorum. Etkileşimleri doğrulanmış ve benim kod boyunca alternatif yollar test ediyorum sonra koçanları kullanın. Sahte sınıfları alay/taslakları her zaman yapmak o kadar da sıkıcı olduğunda öncelikle soyut veri bağımlılığı ya da kullanıyorum.

CEVAP
6 Aralık 2008, CUMARTESİ


Daha fazla bilgi alabilirsiniz :

Martin Fowler about Mock and Stub

Sahtenesneleri gerçekten çalışan uygulamalar var, ama genellikle onları üretim için uygun değildir yapar biraz kestirmeden

Koçanlarıtest için programlanmış içinde ne dışında aramalar testi, hiç bir şey vermiyor genellikle sırasında yapılan konserve cevaplar verin. Koçanları da aramaları, mesajları hatırlar e-posta ağ geçidi bir saplama gibi bilgileri kaydeder 'gönderilmiş' ya kaç sadece mesajları 'gönderdi'. belki de

Alay ediyorburada bahsettiğimiz şey vardır: önceden programlanmış almak için bekleniyor aramalarının bir şartname oluşturan beklentileri ile nesneleri.

xunitpattern:

Sahte Nesnebu hangi SÜT'E bağlı bir nesne olarak aynı arabirimi kullanır. Kullanabileceğimiz bir Alay Nesnesi olarak bir gözlem noktası ne zaman yapmamız gereken Davranış Doğrulama önlemek için test edilmemiş olması bir Gereklilik (bkz: Üretim Hataları sayfasında X) kaynaklanan bir yetersizlik gözlemlemek yan etkileri çağırma yöntemleri SUT.

SaplamaBu uygulama Denenmemiş Kodu (sayfa X Üretim Hataları) SUT içinde egzersiz olan değerleri ile SUT (veya istisna) gelen çağrılara yanıt vermek üzere yapılandırıldı. Test Saplama kullanarak için önemli bir gösterge Denenmemiş Kodu SUT dolaylı giriş kontrolü yetersizliği nedeniyle yaşıyor

SahteBiz veya SUT bağlıdır ve SUT kullanmak için talimat bir bileşen tarafından sağlanan aynı işlevselliği çok basit bir uygulama almak inşa etmek yerine, gerçek.

Şahsen

Kullanarak basitleştirmek için çalışıyorum : Mock ve Stub. Test sınıfı için ayarlanmış bir değer döndüren bir nesnenin zaman Alay kullanıyorum. Saplama test edilmesi için bir Arayüz ya da Soyut bir sınıf taklit etmek için kullanıyorum. Aslında, gerçekten, üretiminde kullanılan değil, ve yardımcı sınıflar olarak kullanılan tüm sınıflar test için ne dediğiniz önemli değil.

Bunu Paylaş:
  • Google+
  • E-Posta
Etiketler:

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • alex maybury

    alex maybury

    20 Aralık 2007
  • dcigs

    dcigs

    9 EYLÜL 2006
  • geraldnonadoez

    geraldnonado

    3 Temmuz 2013