ReSharper 2019.3ヘルプ

テストの実行と結果の分析

ReSharperは単体テストを実行するいくつかの方法を提供します。どちらの方法を選択しても、ユニットテストセッションウィンドウに実行の進行状況、テスト結果、および出力が表示され、カバレッジ結果がユニットテストカバレッジウィンドウに表示されます。

単体テストを実行またはデバッグするさまざまな方法

ユニットテストを実行またはデバッグするには、以下の方法があります。

  • 現在のドキュメントでテストを実行する方法の1つを使用します。

  • テストプロジェクト/ソリューションを実行する方法の1つを使用してください。

  • 既存の単体テストセッションがある場合は、セッション内の一部またはすべてのテストを実行またはデバッグできます。

    • Unit Test Sessionsウィンドウで実行するテストを選択し、ツールバーのユニット・テストの実行 Run Unit Tests Ctrl+T,R / ユニット・テストのデバッグ Debug Unit Tests Ctrl+T,D をクリックします。

    • セッションですべてのテストを実行するには、ツールバーの現在のセッションを実行 Run Current Session Ctrl+T,Y をクリックするか、メインメニューからReSharper | ユニット・テスト | 現在のセッションを実行を選択します。

    • テストの1つが失敗するまでセッションで選択したテストを継続的に実行するには、ユニット・テストの実行 Run Unit Tests Ctrl+T,R ボタンでセレクターを展開し、失敗するまでユニットテストを実行するを選択します。

ユニットテストセッションでテストが実行されると、Unit Test Sessionsウィンドウのツールバーのステータスバーに実行の進行状況が表示され、実行の停止 ThemedIcon StopTest Screen Gray ボタンがアクティブになります。このボタンをクリックすると、テストの実行を中止できます。複数のユニットテストセッションを同時に実行できます。ただし、テストをデバッグする場合、一度に実行できるテストセッションは1つだけです。

必要に応じて、ツールバーの実行しているテストのトラック ThemedIcon TrackRun Screen Gray オプションを有効にすることができます。オンの場合、テストツリー内の選択は、現在実行中のテストに自動的に切り替えられ、出力パネルは実行中に現在のテストの出力を常に表示します。

テスト実行時の自動スクロール出力 ThemedIcon ScrollToBottom Screen Gray オプションを有効にして、実行中のテストの出力に従うこともできます。

必要に応じて、最後に実行したテストをツールバーの前回の実行を繰り返し ThemedIcon Rerun Screen Gray をクリックするか、Ctrl+T,T を押すか、またはメニューのReSharper | ユニット・テスト | 前回の実行を繰り返しをクリックしていつでも再実行することができます。

実行結果と出力を分析する

実行が終了すると、ユニットテストセッションウィンドウに結果が表示されます。

ReSharper: Unit test sessions

出力ペイン(ツールバーの出力を表示する Show Output ボタンを使用して右または下に置くことができます)は、選択したテストの出力を表示します。テストが失敗した場合、ReSharperは失敗に関する短い情報を追加し、例外のスタックトレースを表示します。出力ペインでクリック可能なリンクを使用すると、障害に関連するタイプやメソッドに直接ナビゲートできます。ソリューションに属していないファイルへのリンクが出力された場合は、このリンクをクリックして、対応するファイルタイプに関連付けられた外部アプリケーションでファイルを開くか、CtrlをクリックしてVisual Studioで開きます。

特定のスタックトレースを後でインスペクションする場合は、Ctrl+Shift+Alt+E を押すか、ツールバーのスタックトレースを新しいウィンドウに表示する ThemedIcon StackTraceExplorerToolWindow Screen Gray をクリックして、スタックトレースエクスプローラーウィンドウの新しいタブにスタックトレースを開きます。

デフォルトでは、ReSharperは出力領域の現在の幅に応じて長い行を出力にラップします。必要に応じて、ReSharperオプションのツール | ユニット・テストページでユニットテストセッションの出力で長い行を折り返すチェックボックスをオフにして長い行を折り返しないように選択します。

ステータスバーには、セッション内のテストの合計数と、さまざまな状態のテスト数が表示されます。

デフォルトでは、すべての状態のテストが表示されますが、対応するアイコンをクリックすると、その状態でテストをフィルタできます。 Ctrl - 複数のアイコンをクリックして、いくつかの異なる状態でテストを表示することもできます。

Unit Test Sessionsウィンドウの各テストのステータスは、次のアイコンのいずれかで表示されます。

ThemedIcon RunningTest Screen Gray

単体テストは現在実行中です

ThemedIcon TestPending Screen Gray

単体テストは現在の実行で実行されるようにスケジュールされています

ThemedIcon StatusUnknown Screen Gray

単体テストは実行されませんでした

ThemedIcon Success Screen Gray

latsテストの実行でユニットテストに合格しました

ThemedIcon Error Screen Gray

latsテストの実行でユニットテストが失敗しました

ThemedIcon Ignore Screen Gray

ユニットテストは最後のテスト実行で無視されます
対応する属性(たとえば、NUnitテストの Ignore )を持っているか、ReSharper設定で無視されるカテゴリに含まれています。

ThemedIcon StatusAborted Screen Gray

ユニットテストは最後のテスト実行で中止されました

ThemedIcon StatusInconclusive Screen Gray

単体テストは開始されましたが、ReSharperはテストランナーの出力を読み取ることができませんでした。これは、テストランナーでエラーが発生した兆候である可能性があります。

グループ化項目のステータスを表示するために同じアイコンが使用されます (クラス、プロジェクトなど)

アイコンは各セッションのタブでも使用され、セッションの全体的な実行結果を表示します。

テストセッションツリー上の対応するアイコンは、各状態にあるテストの数を示します。 ThemedIcon UnitSession Screen Gray アイコンには、セッション中のテストの総数が表示されます。
これらのアイコンを使用すると、ツリーをフィルタリングして、対応するステータスのテストだけが表示されるようにすることができます。

実行プロセスをカスタマイズする

デフォルトでは、ReSharperはユニットテストプロジェクト設定を使用して、テストの実行時に使用する.NET フレームワークのバージョンとプロセッサアーキテクチャを定義します。

プロジェクトのテストでCLR2に基づくアセンブリを(間接的または暗黙的に)使用し、プロジェクトが既にCLR4をターゲットにしている場合、テストの実行中にエラーが発生する可能性があります。使用するCLR(.NET フレームワーク)を明示的に指定することにより、このような状況を回避できます。そのためには、ReSharperオプション(Alt+R,,O)のツール | ユニット・テストページでデフォルトの.NET フレームワークバージョンセレクターを使用します。この設定は、NUnit、XUnit、およびMSpecテストフレームワークで実行されているテストに影響します。MSTestで実行されているテストにはまだ影響しません。

オプションページのデフォルトのプラットフォームアーキテクチャセレクタを使用して、プラットフォームアーキテクチャ(32ビットまたは64ビット)を変更することもできます。

必要に応じて、ツールバーのオプションセレクタを使用して、特定のユニットテストセッションのこれらの設定を変更することができます。

スタディ実行ログ

Unit Test Sessionsウィンドウには、ユニットテスト結果からテスト実行プロセスに関連する問題を分離できるテスト実行ログが含まれています。
あなたのテストの中には、テストランナーでエラーが発生している可能性がある「実行不可能」状態のものがある場合は、通常、実行ログをチェックする必要があります。

テストランナーまたはReSharperによってエラーが報告された場合は、ウィンドウのステータスバーの右側にエラーの数が表示されます。それ以外の場合はOKが表示されます。
実行ログを表示または非表示にするには、ログ ThemedIcon SessionLog Screen Gray ボタンをクリックします。

デフォルトでは、「エラー」重大度のイベントのみがログに記録されます。必要に応じて、最小重大度レベルを変更できます。これを行うには、ログ領域を右クリックして目的の重大度レベルを選択するか、ReSharperオプションのツール | ユニット・テストページでログエントリを表示する... セレクタを使用します。

コンテキストメニューで対応するコマンドを選択して、ログ全体をクリップボードにコピーすることもできます。

最終更新日: 2019年12月12日

関連ページ:

現在のドキュメントで単体テストを処理する

ユニットテストの支援は、他のJetBrains .NET製品を拡張することができます:ユニットテストをプロファイルできdotTraceとでユニットテストのコードカバレッジ分析dotCoverを。これらの製品はReSharper Ultimateにも含まれています。現在のドキュメントでのテストの発見:...

プロジェクトまたはソリューションでユニットテストを使用する

ユニットテストの支援は、他のJetBrains .NET製品を拡張することができます:ユニットテストをプロファイルできdotTraceとでユニットテストのコードカバレッジ分析dotCoverを。これらの製品はReSharper Ultimateにも含まれています。ReSharperの単体テストランナ...

ユニットテストセッションの使用

ReSharperの単体テストランナーでは、同じIDで複数のテストを実行することはできません。これは実際にはほとんど発生しませんが、同じIDのテストがある場合、それらはユニット・テストエクスプローラーおよびUnit Test Sessionsウィンドウに単一のノードとして表示され、それらのうち1つだ...

Unit Test Sessionsウィンドウ

ReSharperの単体テストランナーでは、同じIDで複数のテストを実行することはできません。これは実際にはほとんど発生しませんが、同じIDのテストがある場合、それらはユニット・テストエクスプローラーおよびUnit Test Sessionsウィンドウに単一のノードとして表示され、それらのうち1つだ...

スタックトレースエクスプローラーウィンドウ

スタックトレースエクスプローラーは、クリップボードからのスタックトレースを表示し、その中の線をクリック可能なリンクに変換し、関連するコードに直接ナビゲートできます。詳細はスタックトレースから例外に移動するを参照してください。デフォルトでは、現在開いている解のシンボルを含むスタックトレースをコピーして...

テストカテゴリー

NUnit、MSTest、およびxUnitフレームワークでは、対応するシンボルの(NUnit)または(MSTest)属性を使用して、テストとテストクラスをスイートにグループ化できます。xUnitは属性に同様の機能を提供します。ReSharperはこれらの属性を認識しており、多くの関連機能を提供します...