このチュートリアルでは、Static Analysis vs Coverage サンプル フローがどのように新しい違反を収集し、同じリソース中のカバレッジ データと違反を相関させるかについて説明します。カバレッジ データと変更可能なカバレッジしきい値に基いて、潜在的リスクを反映して違反に優先順位を付けます。違反のリスク/影響は以下のいずれかの値に設定されます。
Extreme | ファイルにカバレッジがない |
---|---|
High | ファイルのカバレッジ率が低い (指定のしきい値より下) |
Low | 許容されるカバレッジ率である (指定のしきい値と同じかそれより下) |
目次:
DTP および Extension Designer が正しく設定されていること。「サーバーの設定」を参照。
この例は Violations Event を使用します。これはExtension Designer に付属する一般的なユーティリティ フローです。このフローは、DTP に送られる新規または修正済みの静的解析違反に関連するイベントをサブスクライブするために使用します。[読み込み] > [ライブラリ] > [Common] > [Violation Events] を選択して、このフローをサービスにデプロイします。
Set the file coverage threshold ノードをダブルクリックします。カバレッジのしきい値は、ノードの [Rules] セクションで定義します。デフォルトは 30.0 であり、これはファイル カバレッジのしきい値が 30.0% であることを表します。
Filter and group violations ノードをダブルクリックして JavaScript を確認します。デフォルトでは、コードの書式に関連する違反はカバレッジ計測から除外されます。違反の中には、リソース リークや null ポインタ例外、および同種の違反と比較した場合に重大なリスクを必ずしも生じないものもあります。そのような違反をカバレッジ計測から除外して、それらの違反に対する “リスク/影響” が上昇するのを防止します。
フィルタリング方法を追加して適用することで、カバレッジ リスク解析を適用する違反をさらに絞り込むことができます。また、フィルタリングを削除して、新しい違反をすべてカバレッジ リスク計測の対象にすることもできます。
モジュール カバレッジ データを取得し、違反をフィルタリングした後、違反は projectResourcePath によってグループ化されます。projectResourcePath パラメーターは、違反を含むファイルを表します。違反のセット全体に対して “リスク/影響” を設定できるよう、違反のグループごとに projectResourcePath のファイル カバレッジが取得され、違反のセットが DTP REST API ノードに渡されます。