さて、私が抱えている問題の完全な説明は次のとおりです。
NUnit ExtensionMethodsを使用しようとしていますが、TestDriven.Net を使用して拡張メソッドの 1 つを含むテストを実行するたびに、またはテスト ランナー GUI (Icarus または NUnit) を使用してアセンブリをロードしようとすると、FileNotFoundException が発生します。
頭を壁にぶつけて、さらに掘り下げていくと、何が悪いのか分かっていると思います。キューリフレクターとはい、NUnit.Framework>ExtensionMethods.dll に参照があることがわかります
nunit.framework, Version=2.4.6.0, Culture=neutral, PublicKeyToken=96d09a1eb7f44a77
そして、私が含めているnunitの現在のバージョンは
nunit.framework, Version=2.4.8.0, Culture=neutral, PublicKeyToken=96d09a1eb7f44a77
これまでアセンブリのリダイレクトを使用したことはありませんが、次の行で App.Config を追加するのは簡単なことのようです。
<?xml version="1.0" encoding="utf-8" ?>
<configuration>
<runtime>
<assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1">
<dependentAssembly>
<assemblyIdentity
name="nunit.framework.dll"
publicKeyToken="96d09a1eb7f44a77" />
<bindingRedirect oldVersion="2.4.6.0" newVersion="2.4.8.0" />
</dependentAssembly>
</assemblyBinding>
</runtime>
</configuration>
2.4.6 バージョン (このマシンには存在しません) への呼び出しは、自動的に 2.4.8 バージョンにリダイレクトされるはずです。
ただし、これは機能しません。これは、テスト ランナーが app.config ファイルを自動的に読み取らないためであると思われます (ただし、まだ確認していません)。
だから私の質問は次のとおりです:
問題の診断は正しいですか?
アセンブリのリダイレクトは適切な解決策ですか?また、私はそれを正しく行っていますか?
これをテストランナーで動作させるにはどうすればよいですか?