1

処理中にアセンブリをロードし、含まれている情報を使用してファイルを解析するアプリケーションをテストしようとしています。問題は、アセンブリをロードする場所からパスを持っている間、テスト プロジェクトの bin フォルダーを指すことですが、最終的に何が起こるかは、テストの実行が開始されたときに、動的に作成された別の場所から実行されることです (私は信じています) NUnit による。設定したローカル テスト プロジェクトの bin パスをテストで使用するにはどうすればよいですか?

これを使用して、以下の実行パスにアクセスできますが、これは私が望んでいるものではありません。

System.IO.Path.GetDirectoryName( _ System.Reflection.Assembly.GetExecutingAssembly().GetName().CodeBase)

ファイル:\C:\XXXXDEV\XXXXXXXXXXXXXXXXXXX\TestResults\LX####S1Z 2013-03-15 09_44_19\Out

むしろ、ロードしたい dll が見つかった Test Projects 独自のローカル フォルダーを指すようにします。

C:\XXXXXXXXX\XXXXXXXXXXXX\XXXXXXXXX.Watcher.Test\bin\Debug\XXXXXXOutputXXXXX.dll

4

1 に答える 1

2

Test(メニュー) > Edit Test Settings > Local(local.testsettings)を選択して、テスト設定ウィンドウを開きました。次に、下にスクロールして、ウィンドウの左側にある [単体テスト] オプションを選択しました。その右側で、読み込まれるアセンブリのルート フォルダーとしてテスト プロジェクトの /bin/Debug フォルダーを参照して選択しました。次に、[テスト ディレクトリのアセンブリにロード コンテキストを使用する]チェックボックスをオンにしました。[適用]をクリックしてから [閉じる]をクリックします。この後、テストを実行すると、アセンブリが正しく読み込まれます。

ここに画像の説明を入力

于 2013-03-15T15:12:37.180 に答える