I\'m looking to create a pytest structure where I can separate the fixtures from the tests completely. The reason for this separation is that I want to include the fixtures
read here how structure your test.
your fixture directory seems not in package (project does not have __init__.py
so canno be imported as project.fixtures
either as fixtures
as is not in the path.
You can add required dirs in the path in your tests/conftest.py
(sys.path.append(os.path.join(os.path.dirname(__file__), os.pardir, "fixtures"))
or sys.path.append(os.path.join(os.path.dirname(__file__), os.pardir)
depending how how you want import your modules.
Did you try import
ing your fixtures in project/conftest.py
? Is that what you mean by "wrappers to return an instance"?
Please add the following in your conftest.py
import pytest
pytest_plugins = [
"fixtures.conftest",
"fixtures.fixture_cifs",
"fixtures.fixture_ftp",
"fixtures.fixture_service"
]
This ensures that all fixtures declared under fixtures/
will be found by pytest
As a note that the respective directories referred to in
fixtures.conftest"
need to have__init__.py
files for the plugins to be loaded bypytest
A similar case can be seen here: https://stackoverflow.com/a/54736237/6655459