2013-08-06 21 views
28

Birim testlerinde kullanılmak üzere sahte bir yardımcı sınıf oluşturmam gerekiyor (test edilen sınıflara enjekte). Bu sınıftaki TestCase iddialarını kullanmanın bir yolu var mı?Bir TestCase'in dışındaki Python birim test iddialarını kullanmanın bir yolu var mı?

Sahte sınıf tarafından gerçekleştirilen bazı genel denetimler için iddiaları kullanmak istiyorum. Sen unittest.TestCase() bir örneğini oluşturmak ve bu konuda yöntemlerini çağırabilir

class FakeFoo(object): 

    def do_foo(self, a, b): 
    assertNotNull(a) 
    ... 
+0

Başvuru: http://stackoverflow.com/a/5142453/758446 – BlackVegetable

+3

Başka bir yöntem yoksa, yerleşik assert işe yarardı, ancak TestCase yönergeleri daha ayrıntılı ve yerleşik olarak birkaç avantajı var: http: //stackoverflow.com/q/2958169/1031601 –

+0

Haklısınız; Bazılarını perspektife katacak bir referans vermek istedim. Bir çözüm gibi teklif etmiyordum. İkinci bağlantı için teşekkürler. :) – BlackVegetable

cevap

28

, sınıfın bir mevcut yöntemin adına geçmesi sağlanır: gibi bir şey. __init__ bu durumda yapacak:

tc = unittest.TestCase('__init__') 
tc.assertIsNotNone(a) 

Ancak, muhtemelen yerine iyi bir Mock library arıyoruz. mock iyi bir seçim olurdu.

İlgili konular