probosis üst düzey test kolaylaştıran bir Burun uzantısıdır.
Test sınıfları gibi ne gruplar gibi yararlı meta ihtiva dekoratörler üzerinden kayıt zorlayarak tarafından keşfedilen nasıl değişiklikler onlar diğer testlerde bağımlılıkları vardır, ve bunlar göz ardı edilmelidir eğer olsun ya da olmasın, vardır.
Hortum türlü istenilen çalışma düzenine kayıtlı tüm testler sonra Burun geçer bir test paketi oluşturur. Eğer kesin testi sınıflarında geçen olmadan çalıştırmak istediğiniz testlerin grupları belirlemek mümkün olduğunu böylece de bu listeyi filtreleyebilirsiniz. Atlanır gibi Çalışma zamanında, başarısız olan diğer testler bağlıdır testler otomatik olarak işaretlenir.
Bu işlevsellik Çok TestNG tarafından "ilham" oldu. O çerçevede geliyorlar, ana özellikleri teklifler bağımlı testi (şu anda sınıf düzeyine sınırlıdır) sipariş ve modülleri veya paket yapısının bağımsız gruplar halinde testleri düzenlemek için yeteneği şu anda hortum.
Probosis bir web servisi (ya da sadece bir kez başlatmak istiyorum başka bağımlılık) böyle bağlıdır testleri yazmak mümkündür:
test (grup = ["service.tests"], depends_on_groups = ["service.initialization"])
& Nbsp; & nbsp; & nbsp; sınıf WhenConnectingAsAdmin (unittest.TestCase):
& Nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; def test_change_profile_image (öz):
& Nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; self.client = mymodule.ServiceClient (service_config)
& Nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; self.assertEquals ("default.jpg" self.client.get_profile_image ())
& Nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; self.client.set_profile_image ("spam.jpg")
& Nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; self.assertEquals ("spam.jpg" self.client.get_profile_image ())
Sonra başlayacak ve temiz kapatmaya kod yazmak bir birinci sınıf testi kendisi gibi başka bir modül web hizmeti:
test (gruplar = ["service.initialization"])
& Nbsp; & nbsp; & nbsp; sınıf StartWebServer (unittest.TestCase):
& Nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; def test_start (öz):
& Nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; # Web sunucusu başlatın, daha sonra bir bağlantı verir.
& Nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; mymodule.start_web_server ()
& Nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; İstemci = mymodule.ServiceClient (service_config)
& Nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; self.assertTrue (client.service_is_up)
& Nbsp; & nbsp; & nbsp; test (gruplar = ["service.shutdown"],
& Nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; depends_on_groups = ["service.initialization", "service.tests"]
& Nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; never_skip = true)
& Nbsp; & nbsp; & nbsp; sınıf StopService (unittest.TestCase):
& Nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; def test_stop (öz):
& Nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; İstemci = mymodule.ServiceClient (service_config)
& Nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; client.service_is_up eğer:
& Nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; mymodule.stop_web_server ()
& Nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; self.assertFalse (client.service_is_up ())
Eğer testler, daha fazla test sınıfları eklemek bile istenilen sırayla yürütmek onların adını değiştirmek, ya da farklı modüllere taşıyabilirsiniz emin olabilirsiniz Hortum olacak yapabilirsiniz kullanma
Gereksinimler :.
- Python
- burun
Yorum Bulunamadı