I have the following pytest directory structure:
system_tests/
├── conftest
├── pytest.ini
│
├── suite_1/
│ └── test_A.py
│
└── suite_2/
└── sub_suite_2a/
└── test_B.py
When each test method runs, a number of third-party libraries/processes generate artifacts in the current working directory.
- When pytest is executed from the
sub_suite
folder (using CLI or IDE "play" button), the files are generated in thesub_suite
folder, where I want them to be. - However, when pytest is run from the
system_tests
folder to run all tests, all artifacts are created in thesystem_tests
folder, which is not what I want.
Is there an easy way to force pytest to always use the test class folder as the working directory so I get the same results regardless of how or where I run a test from?