dotCover 2019.1ヘルプ

継続的なテスト

継続的なテストは、さまざまな方法でテスト駆動開発(英語)のプラクティスを合理化します。ユニットテストに影響を与える変更を検出し、影響を受けたすべてのプロジェクトを再構築し、新しいテストと古いテストをすべて再実行します。すべてがバックグラウンドで自動的に行われます。影響を受けるプロジェクトのみが再構築されます。新しいテストと旧式のテストのみが再実行されます。

ユニットテストセッションは、ユニットテストセッションウィンドウの連続テストモードに切り替えることができます。

select ct mode

古いテスト

継続的なテストでは、「古いテスト」という概念を使用して、現在未知の実行結果を持つテストを定義します。明らかに、一度も実行されていないテスト、中止されたテスト、または何らかの理由で終了しなかったテストはすべてこのカテゴリに分類されます。

明確な結果(合格または不合格)で終了したテストは関連しています(古いものではありません)が、あなたのコードを変更するまでです。変更後も古いテストがないことを確認するには、すべてのテストを再実行するか、変更の影響を受けたテストを再実行する必要があります。

継続テストが有効になっている場合、dotCoverはすべてのユニットテストの適用範囲を計算し、対象コードの変更を監視して、変更後にテストが期限切れになったかどうかを検出します。テストが古くなると、dotCoverはそのアイコンに疑問符を追加し(例: icon dirty test)、ステータスインジケータも変更します。

outdated test status bar icon

コードカバレッジを視覚化して、コード内のどのステートメントがユニットテストでカバーされているかを確認したり、コードからカバーテストに移動したりできます。

ツールバーのカバレッジ結果を削除 ThemedIcon JetBrainsDotCoverVsPresentationResourcesSnapshotManagementTrash Screen Gray をクリックすることにより、いつでもテスト実行結果に関する情報をクリアすることができます。

連続テストモード

連続テストモードを選択するには、次の2つの質問に答えます。

  1. 継続的なテストはどのように開始されますか?
    あるいは、言い換えれば、テストはいつ自動起動されるのでしょうか。明示的にソリューションを構築した後、またはそれを保存した後?メインメニューのReSharper | オプション… | dotCover | 継続的なテストを使用して、ReShaperのオプションで優先トリガを選択できます。

  2. どのようなテストが自動起動され、どのようにテストされますか?
    自動スタートテストトグルボタンを使用して、ユニットテストセッションウインドウでツールバーの優先する方法を選択することができます。可能なオプションは自明です。
    • [ビルドの自動スタートテスト | セーブ]: すべてのテストを実行 : すべてのテストはカバレッジ分析なしで実行されます。

    • [ビルドの自動スタートテスト | セーブ]: 新しいテストと古いテストを実行する : カバレッジ分析を行わずに、新しいテストと期限切れのテストのみを実行します。これは最もリソースを節約するモードです。

    • [ビルドの自動スタートテスト | セーブ]: 新しいテストと古いテストをカバーする : カバレッジ分析を有効にして、新しいテストと古いテストを実行します。これは最もリソースを消費するが最も信頼性の高いモードです。dotCoverは、カバレッジ情報を常に最新の状態に保ちます。

重要! [ビルドの自動スタートテスト | セーブ]: すべてのテストを実行および[ビルドの自動スタートテスト | セーブ]: 新しいテストと古いテストを実行するは、連続テストのパフォーマンスへの影響を軽減するために特別に作成されました。このモードの1つを選択すると、dotCoverは新しいカバレッジ情報を収集しません。関連するカバレッジ情報がすでにある場合にのみ、有効にすることは意味があります。テストでカバーするコードを変更すると、ユニットテストカバレッジウィンドウは明示的にいくつかのテストのカバレッジ情報が古くなっていることを伝えます:
outdated coverage info
カバレッジの強調表示では、淡い色を使用して、古いカバレッジ情報に基づいていることを強調表示します。
outdated coverage highlighting
それにもかかわらず、カバレッジ情報が依然として関連していると確信できる場合は、これらのモードを使用し、情報が実際に古くなるまでカバレッジを延期することができます。

連続テストの範囲

単体テストセッションウィンドウ内のどのセッションも連続テストモードに切り替えることができます。持っている単体テストセッションの数だけ、連続したテストスコープを持つことができます。

実行中の継続的なテスト

連続テストモードの 1つを有効にするとすぐに、dotCoverはユニットテストを実行するように促します。すべてのテストが正常に行われたことを確認したら、[単体テストセッション]ウィンドウを閉じてプロジェクトの作業を続けます。Visual Studioのメインウィンドウのステータスバーに現在のテストステータスが表示されます。

Continuous testing status on Visual Studio toolbar

ステータスアイコンは、有効化された継続テスト スコープ持つセッション テストが失敗した場合、または変更後に期限切れになった場合に通知されます。

最終更新日: 2019年5月7日

関連事項

関連ページ:

コードカバレッジの可視化

カバレッジを視覚化し、結果データをテストするために、dotCoverはVisual Studioエディターで現在のスナップショット内のステートメントを強調表示できます。エディターでコードカバレッジを視覚化するには:分析したいスナップショットをカバレッジ結果ブラウザウィンドウウィンドウまたはユニットテ...

カバリングテストへの移動

dotCoverは、コード内の特定のステートメントを対象とする単体テストを検出するためのショートカットを提供します。Visual Studioエディターでは、カバリングテストをリストし、これらのテストのいずれかに直接ナビゲートするポップアップを呼び出すことができます。さらに、このポップアップから即座...

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

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

アプリケーションのカバレッジ分析

ソリューションに単体テストがあるかどうかに関係なく、dotCoverを使用すると、実行したアプリケーションのコードカバレッジを分析できます。dotCoverの制御下でアプリケーションを実行し、それを特定のシナリオで実行すると、実行のステートメントカバレッジを含むカバレッジスナップショットが得られます...

継続的なテストを使用する

継続的テストの概念は、コードを変更するとすぐに実際のテスト結果がすぐに得られることを意味します。プロジェクトを手動で再構築して変更を加えた後、すべてのテストを再実行する必要はありません。影響を受けるテストは自動的にバックグラウンドで実行されます(テストセッションは、変更の保存やプロジェクトの構築など...