ModuleNotFoundError при запуске unittest с подпроцессом - PullRequest
0 голосов
/ 29 мая 2020

Я пишу тесты на python unittest и решил использовать модуль parameterized для параметризации тестов. Теперь все в порядке, когда я запускаю тесты напрямую с помощью интерфейса командной строки unittest - простой запуск python -m unittest в каталоге root запускает все тесты, как ожидалось. Однако я решил, что в моем сценарии должен быть собственный флаг команды для запуска тестов, поэтому, когда вы запускаете, скажем, python ./main.py -t [additional arguments for unittest], сам сценарий запускает python -m unittest [additional arguments for unittest]. Для этого я использую subprocess.run. И это тоже работает ... ну, в некоторой степени. Проблема заключается в следующем: когда я использую python -m unittest, никаких ошибок (за исключением тех, которые проходят тестирование) не возникает, но использование моего скрипта для запуска тестов вызывает ModuleNotFoundError: No module named 'parameterized' вместе с несколькими другими зависимостями, мой код с помощью. Я не знаю, почему это происходит.

Честно говоря, я не так хорошо знаком с unittest, так что, возможно, проблема в моем подходе, возможно, мне следует решить это совершенно по-другому. Мы будем благодарны за любые отзывы.

...