Имам следната структура на директорията
package
__init__.py
module1
model1.py
tests
__init__.py
common.py
test_module1
test_model1.py
Трябва да:
- Имате къде да поставите общи „помощници“ за тестове, като например споделени данни. В момента използвам
common.py
. Мисля, че това налага наличието на__init__
в пътяtests
, така че тестовите файлове да могат да импортират общи. - Не импортирам
package
преди да изпълня тестове, защото трябва да тествам дали конфигурациите се зареждат правилно (и затова трябва да направя промени в променливите на средата, преди да импортирамpackage
и да тествам, че преминава през неговите конфигурации). Nosetests изглежда настоява за импортиране наpackage
, акоtests
е пакет (т.е. ако има__init__
в тестовете).
Има ли начин това да стане? Или трябва да променя настройките си? Мога да имам common
в package
директно, въпреки че това изглежда неудобно.
Въпрос, който засяга този проблем: Импортиране на Python за тестове с помощта на nose - каква е най-добрата практика за импортиране на модули над текущия пакет
__init__.py
, независимо къде поставятеcommon.py
вашата директория с тестове трябва да има__init__.py
, в противен случай носът няма да може да открие тестове от директориятаtests
- person Kashif Siddiqui   schedule 14.03.2017