3

mono の下で NUnit NUnit テスト用の dll を作成できましたが、nunit-console.exe で実行しようとすると、次のエラー メッセージが表示されます。

実行時環境 -
   OS バージョン: Unix 10.3.0.0
  CLR バージョン: 2.0.50727.1433 (2.6.4 (tarball Thu Apr 22 13:24:33 MDT 2010) )

ProcessModel: デフォルト DomainUsage: シングル
実行ランタイム: mono-2.0

** (/Users/smcho/bin/NUnit-2.5.5.10112/bin/net-2.0/nunit-console.exe:36800): 警告 **: 次のアセンブリは /private/var/folders/m4/m4u1hmP から参照されています+FHOQaiZbHj1UCk+++TI/-Tmp-/nunit20/ShadowCopyCache/36800_634111616836311880/Tests_-22323139/assembly/shadow/54274fc2/118e035c_45a94c9e_00000001/mut.dll を読み込めませんでした:
     アセンブリ: nunit.framework (assemblyref_index=1)
     バージョン: 2.5.5.10112
     公開鍵: 96d09a1eb7f44a77
システム エラー: 引数が無効です


** (/Users/smcho/bin/NUnit-2.5.5.10112/bin/net-2.0/nunit-console.exe:36800): 警告 **: ファイルまたはアセンブリ 'nunit.framework、バージョン = 2.5 を読み込めませんでした。 5.10112、Culture=neutral、PublicKeyToken=96d09a1eb7f44a77' またはその依存関係の 1 つ。

何が間違っている可能性がありますか? /Users/smcho/bin/NUnit-2.5.5.10112/bin/net-2.0/framework の下に nunit.framework.dll がありますが、これについて認識していないようです。

4

2 に答える 2

2

これは、Mono で NUnit を使用する際のもう 1 つの不満な点です。私が知る限り、欠落しているすべてのファイル ( だけではありませんnunit.framework.dll) をnunit-console.exe.

欠落している DLL を検索するためのコマンド ライン オプションが、別のディレクトリ内にあるmononunit-console.exe、別のディレクトリを指定している可能性があります。よくわかりません。それを除けば、不足している DLL を と同じフォルダーにコピーするnunit-console.exeか、フォルダーにコピーcdしてframework使用する必要があります。mono ../nunit-console.exe /path/to/my/tests.dll

于 2010-06-03T17:01:35.180 に答える
0

nuget がインストールされたら、それを使用して nunit.console を次のようにインストールできます (これは私の .circlci/config.yml ファイルからのものです)。

- run: mono --runtime=v4.0 nuget.exe install nunit.console
- run: msbuild MySolution.sln
- run: mono --runtime=v4.0 NUnit.ConsoleRunner.3.12.0/tools/nunit3-console.exe FirstModule.Tests/bin/Debug/FirstModule.Tests.dll
- run: mono --runtime=v4.0 NUnit.ConsoleRunner.3.12.0/tools/nunit3-console.exe SecondModule.Tests/bin/Debug/SecondModule.Tests.dll

トリックは、NUnit.ConsoleRunner のパス全体を指定し、バージョン 3での-変更に注意することです。.

于 2021-05-16T21:08:04.280 に答える