Basit bir Python modülü için bile en yaygın dizin yapısı, birim testlerini kendi testdizinlerine 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.pyiç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."
unittestbenim de açıklandığı gibi komut satırı arayüzü aşağıda cevabını sen yoluna dizini eklemek zorunda kalmamak.