Кажется, что очень распространенная структура каталогов даже для простого модуля Python - это разделение модульных тестов на их собственный test
каталог:
new_project/
antigravity/
antigravity.py
test/
test_antigravity.py
setup.py
etc.
например, посмотрите это руководство по проекту Python .
У меня вопрос просто : как обычно проводить тесты? Я подозреваю, что это очевидно для всех, кроме меня, но вы не можете просто запустить python test_antigravity.py
из тестового каталога, так как import antigravity
он потерпит неудачу, так как модуль не находится на пути.
Я знаю, что могу изменить PYTHONPATH и другие приемы, связанные с поиском, но я не могу поверить, что это самый простой способ - хорошо, если вы разработчик, но нереалистично ожидать, что ваши пользователи будут использовать, если они просто хотят проверить тесты. прохождение.
Другая альтернатива - просто скопировать тестовый файл в другой каталог, но он выглядит немного глупым и упускает смысл начинать их с отдельного каталога.
Итак, если бы вы только что загрузили исходный код в мой новый проект, как бы вы запустили модульные тесты? Я бы предпочел ответ, который позволил бы мне сказать моим пользователям: «Чтобы запустить модульные тесты, сделайте X».
unittest
интерфейс командной строки, как описано в моем ответе ниже, чтобы вам не нужно было добавлять каталог в путь.