Это вопрос настройки тестовой среды.
В моем проекте у меня есть несколько модульных тестов, которые получают доступ к файлам тестовых данных. Эти модульные тесты могут быть запущены из моего каталога проектов через тестовый бегун. Или я могу запускать каждый тестовый файл/модуль отдельно для целей отладки, например.
Проблема в том, что в зависимости от того, где я запускаю тесты, текущий каталог отличается. Поэтому открытие файла тестовых данных, как показано ниже, путем указания пути относительно текущего каталога не будет работать, когда эти файлы будут запущены из каталога проекта, так как файл тестовых данных не находится в этом каталоге.
f = open('test_data.ext', 'r')
Я думал об использовании __file__ для использования пути относительно текущего тестового модуля, но этот не работает, когда тестовый модуль, вызывающий __file__, является тем, который выполняется отдельно.
Как люди обычно решают эту проблему?