[pytest-dev] top-level conftest.py not recognized when running tests in sub-directories

Jens Hoffmann jh at solute.de
Thu Sep 25 12:35:25 CEST 2014


Hi,


we are working with pytest 2.6.2 and I run into a problem with my 
conftest session fixture setup.

My project structure looks something like this:

.
├── project
│ └── module
│ └── foo.py
└── test
├── conftest.py
└── module
└── test_foo.py


conftest.py contains a single fixture with scope="session" and 
autouse=True, setting up some database that is needed for every single 
unittest. So also test_foo.py depends on that database setup.

Now some py.test runs:

$ py.test
=> conftest.py called, database setup properly, tests pass

$ py.test test/module
=> tests fail, fixture in conftest.py not executed

$ py.test test/module/test_foo.py
=> tests fail, fixture in conftest.py not executed

$ py.test -k MyTestClassContainedInTestFooDotPy
=> tests fail, fixture in conftest.py not executed


Now my question/problem: Are all these outcoms expected behaviour? I 
hoped that all the runs would pass, that is execute my session fixture 
so that I wont need to always run my whole test suite.


Thank you for your answer,
Jens



More information about the Pytest-dev mailing list