0

NUnit Gui(個別にロード)から両方のテストプロジェクトを表示できますが、VisualStudioテストビューから両方のプロジェクトを表示することはできません。テストビューには、最初の/元のプロジェクトのみが表示されます。リロードを押しても何も起こりません。テストビューで2番目以降のプロジェクトを表示するにはどうすればよいですか?両方を同時に/同じビューで表示する必要がありますね?

設計上、テストビューで1つのプロジェクトのテストしか表示できない場合、テストビューでプロジェクトを変更するにはどうすればよいですか?

詳細:

2番目のプロジェクトを手動で作成しました。つまり、nunit.framework.dllを参照するプロジェクトライブラリとして「テストを作成」するのではありません。2つのプロジェクトのアセンブリファイルとプロパティを確認しましたが、同じように見えます。

「VisualNUnit2010」バージョン1.2.4拡張機能がインストールされたNUnit2.6.0.12051を使用しているVS2010Professionalを使用しています。

VSテストビューとNUnitGuiの両方で機能するNUnitテストプロジェクトが1つあります。[TestFixture]クラスと[Test]メソッドを持つ2番目のプロジェクトを追加しました。すべてのプロジェクトが正常にビルドされます。両方のテストは、両方の親ディレクトリにあるnunit.framework.dllを参照します。

4

2 に答える 2

0

これを引き起こす可能性のある多くの問題があります。これが私のものです:

  • 2 つの NUnit テスト プロジェクトがありました。
  • "テスト エクスプローラー" -> "すべて実行" では、1 つのプロジェクトのテストのみが検索されます。
  • 見つからなかったテストの 1 つを明示的に右クリックし、[テストの実行] をクリックすると、[テストが見つかりません] という結果になりました。出力ウィンドウで。
  • すべての構成のすべてのプロジェクトが任意の CPU に設定されましたが、すべてに X86 が選択されたかどうかは問題ではありませんでした。

問題は、私の Visual Studio (2015、FWIW) が Test Adapter 2.x を使用していて、私のプロジェクトの 1 つが NuGet を使用して NUnit 3.0 をプルしていたことです。 Test Adapter 2.x は NUnit 3 テストを実行しないため、私の NUnit 3 テスト プロジェクトは無視されていました。

この問題を解決するために:

  1. すべての NUnit テスト アダプターをアンインストールします (Visual Studio -> [ツール] -> [拡張機能と更新プログラム] から、および各プロジェクトの [NuGet パッケージ マネージャー] ウィンドウから)。
  2. 各プロジェクトのNuGet パッケージ マネージャー ウィンドウを使用して、すべてのテスト プロジェクトを NUnit 3.0 に更新します。
  3. Visual Studio -> Tools -> Extensions and Updates から NUnit3 Test Adapter をインストールします。

ノート:

  • NUnit 2 に固執する必要がある場合は、適切なテスト アダプターをインストールするだけです。重要なのは一貫性です。
  • 以前に NuGet によってインストールされたテスト アダプターを使用していたが、Visual Studio 拡張機能に切り替えた場合、パス文字列からリソース/ファイルを読み込む際に問題が発生する可能性があります。その問題を解決するには、この回答を参照してください。
于 2015-11-25T23:58:01.243 に答える
0

プロジェクト ファイルには、プロジェクトをテスト プロジェクトとして記述するタグがあります。

csprj ファイルの PropertyGroup セクションで、これを追加します。

<ProjectTypeGuids>{3AC096D0-A1C2-E12C-1390-A8335801FDAB};{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}</ProjectTypeGuids>

ここで詳細を参照してください: http://www.kindblad.com/2010/08/07/how-to-change-an-existing-visual-studio-project-into-a-test-project

于 2012-06-21T15:11:03.850 に答える