Bir modülün düzgün şekilde yüklenip yüklenmediğini görmek için bir yazım denetlemenin pythonik yolu nedir? Düzgün yüklü olarak, bir ImportError: foo adında modül yok. Bunu test etmek gerekiyordu nedenPython'da bir modülün içe aktarılmasıyla ilgili bir yazım nasıl yazılır
cevap
As I have to deploy my Django application on a different server and it requires some extra modules I want to make sure that all required modules are installed.
Bu, bir birim sınama senaryosu değildir.
Bu, bir üretim hazırlık süreci ve teknik olarak - uygulamanızın bir testi değil.
Bu, ortamla ilgili bir sorudur. Bizimki onlarca şey içerir.
Böyle basit bir komut dosyasıyla başlayın. Var olduğundan emin olmak için ihtiyacınız olan her şeyi ekleyin.
try:
import simplejson
except ImportError:
print "***FAILURE: simplejson missing***"
sys.exit(2)
sys.exit(0)
Bu komut dosyasını, kurulumun bir parçası olarak her ortamda çalıştırın. Hiç bir birim testi değil. Kurulum kurulumu için bir önkoşuldur.
Çok teşekkürler ve yanlış terminolojiyi kullandığım için özür dilerim, yanlış bir şekilde bir sürü insanı yanlış ayağa koydu :) – DrDee
görmüyorum, ama bir şey gibi: değil geçerse
bir ithalat hata testi kaldırılırsadef my_import_test(self):
import my_module
, başarısız oldu.
Belki de ihtiyacım olan şeylerde net değilim. Bir modülün içe aktarılmasının başarılı olup olmadığını test etmek istiyorum, böylece hangi modüllerin eksik olduğunu ve yüklenmesinin gerekip gerekmediğini görebiliyorum. Öyleyse bir self.assertUnequals ... deyimini nasıl kullanabilirim? – DrDee
- 1. Modülün denetleyici işlevini, tamamen ayrı bir modülün denetleyicisinden nasıl ararsınız?
- 2. Python: İçe aktarılan bir modülün mutlak yolunu bulun
- 3. Paketin tamamını içe aktarmadan modülün baskı sürümü
- 4. Intellij'de bir modülün başka bir modülün testlerine bağlı olması mümkündür
- 5. Perl modülünde bir işlev referansı nasıl yazılır?
- 6. Bir modülün örnek değişkenlerini Ruby'de nasıl ilklendirebilirim? .
- 7. Ruby: Bir modülün bir sabit diske nasıl erişileceği bir modül
- 8. Magento'daki bir modülün genel yolu
- 9. benim Tepki projede bir modülün css dosyasını
- 10. Kendisine başvuran bir yazım hatası
- 11. Bir yazım örneği örneği ve
- 12. Bir blokta yazım denetimi nasıl yapılır
- 13. NSNumberFormatter: AND parçacık (İngiliz yazım) bir sayı ortaya yazım
- 14. Yazım denetleyicisini yazım denetleyicisine nasıl entegre edebilirim?
- 15. Gömülü Python 2.7.2 Kullanıcı tanımlı bir dizinden bir modülün içe aktarılması
- 16. Python'da bir kabuk nasıl yazılır
- 17. PHP'de bir dosyaya nasıl yazılır?
- 18. C++: Bir const_iterator nasıl yazılır?
- 19. Harita bir parsele nasıl yazılır?
- 20. Bir bit akışı nasıl yazılır
- 21. Bir dosyaya byteArray nasıl yazılır?
- 22. Android Studio'da başka bir modülün kaynağıyla derleme
- 23. Nümerik dizi veya pandalarla pythonda rutini sadeleştirme
- 24. R_ Bir isimde bir değişken nasıl yazılır
- 25. Bir NSMutableData nesnesine ham bayt nasıl yazılır?
- 26. Bir yazıcı yazıcısı nesnesine nasıl yazılır?
- 27. djangorestframework: İlgili bir alanda filtreleme
- 28. Bir modülün içinden belirli bir form öğesine başvurma
- 29. Bir modülün içindeki bir sınıf için fabrikaların tanımlanması
- 30. Bir yazım nesnesini genel bir yönteme geçirebilir miyim?
Genellikle, ünite testi için fazla bir şey yoktur. İçe aktarma ifadesine güvenmiyor musunuz? İthalat kod satırı o kadar basit - ve denetlenmesi o kadar kolay ki - ünite testine biraz saçma geliyor gibi görünüyor. Neden "import" ifadesini test ediyorsunuz? –
Django uygulamamı farklı bir sunucuya dağıtmak zorunda olduğumdan ve gerekli tüm modüllerin kurulu olduğundan emin olmak istediğim bazı ekstra modüller gerektiriyor. Örneğin, python 2.5 için simplejson'un kurulduğundan emin olun. Tabii ki ithalat beyanına güveniyorum, sadece ihtiyacım olan bir modülü kurmayı unutmak istemiyorum. – DrDee
Görünüşe göre üretim ortamında test yapıyorsunuz, bu da garip. Her neyse, paket yöneticiniz için uygun bir bağımlılığa sahip olduğunuzu test ediyorsunuz. Uygulamanız için paketler oluşturun veya pythonic bağımlılık yöneticilerini kullanın (virtualenv'de pip ve pip install -r requirements.txt akla gelir). – Almad