6

コマンド ライン NUnit テスト ランナーでテストを実行する際に問題が発生しています。

x64 マシン上の .NET 4 でバージョン 2.5.4 を使用しています。

次の行を使用すると、「ファイルまたはアセンブリ 'bar' またはその依存関係の 1 つを読み込めませんでした。指定されたファイルが見つかりません。」というエラーが発生します。

nunit-console-x86 foo.dll bar.dll /framework=4.0.30319

dll ファイル名を逆にすると、代わりに「foo」が見つからないというエラーが表示されます...

次のように個別に実行すると機能します。

nunit-console-x86 foo.dll /framework=4.0.30319

また、次のコマンドを実行すると、2 番目のファイルのテストが機能します。

nunit-console-x86 bar.dll /framework=4.0.30319

プロジェクトを 4.0 にアップグレードする前に、NUnit 2.5.2 と同じコマンド ライン ツール オプションを使用し、その時点でランナーは複数のアセンブリでうまく機能しました。同時に複数のファイルに対してテストを実行する機能が壊れているようです...

同じ動作を確認できる人、または私の環境が何らかの形で壊れていることを示している人はいますか?

/あたり

4

2 に答える 2

3

アセンブリの読み込み動作が 2.5.4 と 2.5.3 の間で変更されました。これが問題を引き起こしていたため、2.5.3 に戻しました。これは、4.0 フレームワークを引き続きサポートするためです。

次のように、msbuild スクリプトで複数のアセンブリと共に nunit-console.exe 2.5.3 を使用します。

    <Exec Command="%22$(NUnit_Install_Directory)bin\net-2.0\nunit-console.exe%22
 /noshadow @(TestableAssemblies, ' ')  /xml $(BuildFilesPath)\NUnit-Results.xml" />

実行すると、次のように入力されます (読みやすいように編集されています)。

"c:\Program Files\NUnit 2.5.3\bin\net-2.0\nunit-console.exe" /noshadow D:\BuildAgent\GojiSoft.Application.Test\bin\Release\GojiSoft.Application.Test.dll D: \BuildAgent\GojiSoft.Common.Test\bin\Release\GojiSoft.Common.Test.dll /xml D:\BuildAgent\work\2f016459feee51ce\Build\NUnit-Results.xml

単体テストには 64 ビット マシンを使用しないため、YMMV.

nunit-console-x86.exe.config に加える必要がある追加の変更についてのブログ記事があります: Getting .Net 4.0, Team City, MSBuild and Nunit to play nice.

于 2010-04-16T16:46:38.623 に答える
0

私も同じ問題を抱えています。複数のdllを含むnunitプロジェクトをGUIで作成することで回避しました。次に、nunit-console で実行できます。

于 2010-04-21T15:22:57.940 に答える