web-dev-qa-db-ja.com

修正方法ファイルまたはアセンブリ 'nunit.engine、Version = 3.7.0.0をロードできませんでした

ユニットテストを実行するためにNUnitを使用する個別のテストプロジェクトでwebapplictionがあります。私のテストプロジェクトがテストを発見しようとすると、次の例外が発生します。

An exception occurred while test discoverer 'NUnit3TestDiscoverer' was loading tests. Exception: Could not load file or Assembly 'nunit.engine, Version=3.7.0.0, Culture=neutral, PublicKeyToken=2638cd05610744eb' or one of its dependencies. The system cannot find the file specified.

もちろん、これは非常に一般的なエラーですが、この特定のアセンブリへの参照や、実際に問題を引き起こしている他の依存関係は見つかりません。別のことは、私は現在、言及された3.9.0の代わりにNUnitの3.7.0がインストールされていることです。私はすでにソリューションのクリーニングと再構築を試み、すべてのNugetパッケージを復元しましたが、objディレクトリをクリアしても解決しませんでした。

13
Bunnynut

これは、Visual Studioの最新バージョンで非常に頻繁に発生しています。理由はわかりませんが、原因はVisual Studioキャッシュ内のテストアダプターの不完全なコピーです。修正は、キャッシュされたコピーを削除し、Visual Studioを再起動することです。

削除するフォルダーはC:\Users\username\AppData\Local\Temp\VisualStudioTestExplorerExtensions\NUnit3TestAdapter.3.x.xユーザー名とバージョンに応じて。

https://github.com/nunit/nunit3-vs-adapter/issues/261 および http://hermit.no/how-to-resolve-cases-of-を参照してくださいvisual-studio-no-tests-appearing /

19
Rob Prouse

3.7.0のリファレンスをGACとして言及したプロジェクトファイルにあるようで、そのdllはGACで使用できないため、失敗の原因となる可能性があります。

0
Mr. N. Das

私の場合は

Executor 'executor:// nunit3testexecutor /'の呼び出し中に例外が発生しました:ファイルまたはアセンブリ 'nunit.engine、Version = 3.9.0.0をロードできませんでした

そして問題は:私のテストプロジェクトでは、NUnit3TestAdapter.3.13.0のインポートがあります。

  <Import Project="..\..\..\packages\NUnit3TestAdapter.3.13.0\build\net35\NUnit3TestAdapter.props" Condition="Exists('..\..\..\packages\NUnit3TestAdapter.3.13.0\build\net35\NUnit3TestAdapter.props')" />

また、別のプロジェクトでは、NUnit.Engine.3.10.0を参照しています。ただし、NUnit3TestAdapter.3.13.0のパッケージにはNunit.Engine.3.9.0が含まれています。

\packages\NUnit3TestAdapter.3.13.0\build\net35

そのため、別のプロジェクトのNunit.Engineを3.9バージョンにダウングレードすることが解決策でした。

0
Boltyk