[TIP] fixture ordering and dynamically adding fixtures to Testcases
Floris Bruynooghe
flub at devork.be
Mon Jan 15 13:17:43 PST 2018
Hi,
It seems Bruno's reply got lost somewhere...
On Sat 13 Jan 2018 at 22:38 +0530, arun kali raja wrote:
> 1. I have a .py file where i have defined two Autouse fixtures..
> fixtureMod_1 is module scoped and fixtureFunc_1 is function scoped.. Now in
> conftest.py i have imported these two fixtures.. in my test_x.py i have a
> another module scoped fixture say fixtureMod_2..The order of execution of
> fixture seems to be fixtureMod_1,fixtureFunc_1 and then fixtureMod_2.. isnt
> module level fixtures supposed to be executed before function level
> fixtures?? isnt that how scopes are ordered.. i am able to solve the issues
> by giving fixtureMod_2 as a dependency to fixtureFunc_1.. but still i am
> trying to understand why pytest respects the scope ordering in this case..
> does the order of sourcing the fixture override the scope based ordering??
If I understand this correct then you have something like this:
foo.py:
@pytest.fixture
def fixtureMod_1():
pass
@pytest.fixture
def fixtureFunc_1():
pass
conftest.py:
from foo import fixtureMod_1
from foo import fixtureFun_1
test_x.py:
@pytest.fixture
def fixtureMod_2():
pass
def test_foo(fixtureMod_1, fixtureFunc_1, fixtureMod_2):
pass
More information about the testing-in-python
mailing list