テスト環境のセットアップについての質問です。
私のプロジェクトには、テスト データ ファイルにアクセスする単体テストがいくつかあります。これらの単体テストは、テスト ランナーを介してプロジェクト ディレクトリから実行できます。または、たとえばデバッグ目的で、各テスト ファイル/モジュールを個別に実行することもできます。
問題は、テストを実行する場所によって、現在のディレクトリが異なることです。そのため、以下のように、現在のディレクトリからの相対パスを指定してテスト データ ファイルを開くことは、テスト データ ファイルがそのディレクトリにないため、これらのファイルがプロジェクト ディレクトリから実行されている場合には機能しません。
f = open('test_data.ext', 'r')
__file__ を使用して現在のテスト モジュールからの相対パスを使用することを考えましたが、__file__ を呼び出すテスト モジュールが個別に実行されている場合、これは機能しません。
人々は一般的にこの問題をどのように解決しますか?