Basit bir Python modülü için bile en yaygın dizin yapısı, birim testlerini kendi test
dizinlerine ayırmak gibi görünüyor :
new_project/
antigravity/
antigravity.py
test/
test_antigravity.py
setup.py
etc.
örneğin bu Python projesine bakınız .
Benim sorum basitçe Testleri yapmanın olağan yolu nedir? Bunun benden başka herkes için açık olduğundan şüpheleniyorum, ancak modül yolda olmadığı için başarısız olacağı python test_antigravity.py
için test dizininden import antigravity
çalışamazsınız.
PYTHONPATH ve diğer arama yolu ile ilgili hileleri değiştirebileceğimi biliyorum, ancak bunun en basit yol olduğuna inanamıyorum - geliştiriciyseniz sorun değil, ancak kullanıcılarınızın sadece testleri kontrol etmek istediklerinde kullanmasını beklemek gerçekçi değil geçen.
Diğer alternatif sadece test dosyasını diğer dizine kopyalamaktır, ancak biraz aptal gibi görünür ve başlamak için ayrı bir dizinde bulunma noktasını kaçırır.
Peki, kaynağı yeni projeme indirdiyseniz, birim testlerini nasıl yapardınız? Kullanıcılarıma şunu söylememe izin veren bir cevap tercih ederim: "Birim testlerini yapmak için X yapın."
unittest
benim de açıklandığı gibi komut satırı arayüzü aşağıda cevabını sen yoluna dizini eklemek zorunda kalmamak.