pytest игнорирует venv при вызове из оболочки без файла pytest.ini - PullRequest
3 голосов
/ 10 марта 2020

Я пытаюсь использовать pytest в терминале моего Ма c. У меня нет настройки pytest.ini и я не могу sh сделать ее в данный момент.

Когда я запускаю только команду pytest, она выводит предупреждения (DeprecationWarning) для несколько пакетов сайтов в моей виртуальной среде (с именем venv, расположенной в каталоге root моего проекта).

venv/lib/python3.6/site-packages/eventlet/patcher.py:1
  /path/to/venv/lib/python3.6/site-packages/eventlet/patcher.py:1: DeprecationWarning: the imp module is deprecated in favour of importlib; see the module's documentation for alternative uses
    import imp

Я бы хотел игнорировать каталог venv/ при запуске pytest, поэтому мой предупреждения относятся только к моему проекту.

Как я могу не запустить pytest в моей виртуальной среде?


Что я пробовал

Я пробовал несколько версий флага --ignore:

pytest --ignore=venv
pytest --ignore=./venv/
pytest --ignore="venv/*"
pytest --ignore="./venv/*"

( source )

И используя -k

pytest -k 'not venv'

( источник )


Что я прочитал

--disable-pytest-warnings: Я все еще хочу, чтобы отображались другие предупреждения

--pythonwarnings ignore::DeprecationWarning кажется слишком обобщенным c (что, если один из файлов моего проекта использует устаревший модуль)

--pythonwarnings ignore::DeprecationWarning:some_package.*: слишком ручной (много пакетов моего сайта генерируют предупреждения ngs)


Управление версиями

  • macOS Mojave v10.14.3
  • Python 3.6.5
  • pytest==5.3.5
...