2017-09-22 6 views
0

Visual Studioプロジェクトがあり、これはうまく構築されており、nunit 2テストはVisual Studio、Visual Studio内でテストが実行されますが、nunit-console "ファイルやアセンブリを読み込めませんでした..."

しかし、同じプロジェクトでnunit-console version 2.6.4.14350を実行すると、以下のエラーが表示されて失敗します。これは、テストアダプターまたはサードパーティツール(例:Code Rush、TestDriven.netなど)を使用しています。

System.IO.FileLoadException:ファイルまたはアセンブリ をロードできませんでした 'System.Web.Mvc、バージョン= 4.0.0.0、文化=中立、 なPublicKeyToken = 31bf3856ad364e35' またはその依存関係の1つ。アセンブリのマニフェスト定義の がアセンブリ の参照と一致しません。 (HRESULTからの例外:0x80131040):私はSystem.Webのを使用していますので、これは、真である 'System.Web.Mvc、バージョン= 4.0.0.0、文化=中立、 なPublicKeyToken = 31bf3856ad364e35'

ファイル名.Mvcバージョン= 5.2.3ですが、私はまだメッセージについて混乱しています

答えて

1

コンパイル時にこれが動作するのは、プロジェクトのweb.configファイルにバインディングリダイレクトがあるからです。

<dependentAssembly> 
    <assemblyIdentity name="System.Web.Mvc" publicKeyToken="31bf3856ad364e35" /> 
    <bindingRedirect oldVersion="0.0.0.0-5.2.3.0" newVersion="5.2.3.0" /> 
</dependentAssembly> 

ビルドとVisual Studioテストランナーはこれをすべて尊重しますが、nunit-consoleはそうではありません。

verbosity:diagnosticを実行すると、このバインディングリダイレクトが使用されているときに警告が表示されます。

これで、すべてが最新バージョンを指し、問題がなくなるように問題を修正できます。 これを解決するには

関連する問題