Pytest в Tox – не могу найти тесты, `ImportError`Python

Программы на Python
Anonymous
Pytest в Tox – не могу найти тесты, `ImportError`

Сообщение Anonymous »

У меня есть пакет с текущей структурой:

Код: Выделить всё

my_package
|- pyproject.toml
|- poetry.lock
|- tox.ini
|- my_package
|  |- __init__.py
|  |- my_package.py
|- tests
|- test_my_package.py

Код: Выделить всё

pyproject.toml
настроен для pytest как таковой:

Код: Выделить всё

[tool.pytest.ini_options]
addopts = [
"--import-mode=importlib",
]
testpaths = [
"tests",
]
имеет следующую конфигурацию, согласно первому варианту использования в примере официальной документации поэзии

Код: Выделить всё

[tox]
env_list =
format
py312

[testenv:format]
description = install black in a virtual environment and invoke it on the current folder
deps = black==22.3.0
skip_install = true
commands = black .

[testenv:py312]
deps =
pytest
commands =
pytest tests
Запуск тестов pytest работает отлично, но когда я запускаю tox, я получаю ImportError при импорте тестового модуля '~\Documents\repos\my_package\tests\ test_my_package.py - ModuleNotFoundError: нет модуля с именем test
Я пробовал настроить tox и pytest с помощью тестовых путей (pytest прекрасно работает и без этого конфигурация). Я также попробовал добавить __init__.py в тесты каталога.
Чего мне здесь не хватает?
Как примечание: я попробовал второй вариант использования в документации Poetry - он работал для запуска тестов, но он не запускает тесты в виртуальной среде, отдельной от моего рабочего venv, а также удаляет все дополнительные пакеты, которые мне нужны для создания документации. и так далее.

Подробнее здесь: https://stackoverflow.com/questions/788 ... mporterror

Вернуться в «Python»