ハードコードされたパスがたくさんある python コードを拡張する必要があります
すべてを台無しにしないために、変更前にコードの単体テストを作成したいと思います: それは私の新しいコードで非回帰テストとして機能します (それはハードコーディングされたパスはありません)
しかし、システムパスがハードコードされているため、chroot ツリー内でテストを実行する必要があります (システムディレクトリを汚染したくありません)。
問題は、chroot をテスト用にのみ設定したいことです。 root 権限のみを持つ os.chroot (そして、テストスクリプトを root として実行したくありません)
実際、偽のツリーディレクトリが必要なだけなのでopen('/etc/resolv.conf)
、システムのresolv.confではなく偽のresolv.confを取得するコードが
実際の回帰テストではないため、コード内のハードコードされたパスを自分で置き換えたくないのは明らかです
これを達成する方法はありますか?
ありがとう
アクセスされるすべてのパスは、ユーザーアカウントで読み取り可能であることに注意してください