テストを実行するときに画像ファイルが見つからず、画像を探すたびに、バイナリが存在するフォルダー内ではなく、Nunit フォルダー内を検索するという問題が Nunit で発生しています。以下は、何が起こっているかの詳細な説明です。
- いくつかのゲーム要素の定義と、使用しているスプライトを定義するpngファイルを含むテスト中のバイナリを構築しています(健全性のためにBinary1と呼びます)
- Nunit は、別のバイナリ (Binary1Test) からテストを実行し、最初のバイナリ (Binary1) に対してテスト メソッドを実行します。
- テストが Binary1 でコードを実行し、Binary1 が (相対パスで定義された) 画像ファイルの 1 つを使用する必要がある場合を除き、すべてのテストに合格します。メソッドが呼び出されると、Nunit はファイルが見つからないという例外をスローし、ファイルが見つからないことを示し、Program Files\Nunit.net 2.0 フォルダー内を探していることを示します。
したがって、コードがこれを行っている理由がわかりません。Enviornment.CurrentDirectory をプルアップすると、nunit へのパスではなく、正しいパス (デバッグ フォルダーへのパス) が返されます。また、相対パスを使用する代わりにこれを使用すると、テストは問題なく実行されます。私の質問は、私のバイナリ内から相対パスをロードする場合、バイナリが配置され、画像が保存されているディレクトリではなく、nunit がそのディレクトリを使用することを決定した理由を知っている人はいますか? ありがとう。