EN JP CN

ウォークスルー:NPE.RET 誤検知の処理Klocwork メトリックに基づいたカスタムレポートを追加する

ウォークスルー:NPE.RET 誤検知の処理Klocwork メトリックに基づいたカスタムレポートを追加する

この例では、Klocwork メトリックに基づいて新しい 2 つのレポートタイプを作成する方法を順を追って説明します。

  • 3 つ以上の戻り値を持つ関数とメソッド
  • 1 ファイルあたりのシステムインクルードの数

Klocwork メトリックに基づいたカスタムレポートを追加するには:

  1. 次のファイルをバックアップします。
    <projects_root>/config/metrics.xml
  2. 編集する元のmetrics.xmlファイルを開きます。
  3. 最初のカスタムレポートはしきい値メトリックであるため、EntityCountOverThreshold カテゴリになります。
  4. "戻り値の数" メトリックの ID を見つける必要があります。関数およびメソッドレベルのメトリック から、ID 134 を見つけます。この ID は、<kids>要素で使用されます。
  5. フィールド2 つのエンティティ、関数とメソッドの ID を見つける必要があります。サポートされるエンティティの種類 から、ID 5 および 48 を見つけます。これらの ID は、<entityKids>要素で使用されます。
  6. これで、<category catid="EntityCountOverThreshold"> にあるデフォルトの <metric> 要素全体をコピーして、その下に直接貼り付けることができます。
  7. 要素を次のように編集します。
    <metric>
    <name>Number of returns</name>
    <description>Number of Functions with returns over {threshold}</description>
    <kids>134</kids>
    <entityKids>5,48</entityKids>
    <default_threshold>2</default_threshold>
    <enable>true</enable>
    </metric>
  8. 2 番目のカスタムレポートは合計値メトリックレポートであるため、TotalMetricValue カテゴリになります。
  9. "システムインクルードの数" メトリックの ID を見つける必要があります。ファイルレベルのメトリック から、ID 16 を見つけます。この ID は、<kids>要素で使用されます。
    ヒント: TotalMetricValue カテゴリには、Klocwork エンティティの種類のリスト (<entityKids> 要素) は必要ありません。
  10. これで、<category catid="TotalMetricValue"> にあるデフォルトの <metric> 要素全体をコピーして、その下に直接貼り付けることができます。
  11. 要素を次のように編集します。
    <metric>
    <name>Number of system includes</name>
    <description>Number of system includes per file</description>
    <kids>16</kids>
    <enable>true</enable>
    </metric>
  12. ファイルを保存します。
  13. Klocwork サーバーを kwservice restart または Windows Services 管理で再起動します。
    Klocwork Review ユーザーがログインしたとき、または [レポート] ページを更新したときに、行った変更の内容がすべての Klocwork Static Code Analysis ユーザーに表示されます。変更内容が正しく表示されていることを確認します。
  14. Static Code Analysisログインします。
  15. プロジェクトの [レポート] をクリックします。
  16. [新規レポートの作成] をクリックします。
    注: レポートタイプを既に表示している場合は、ブラウザーを更新して metrics.xml に変更内容を反映します。
  17. レポートタイプが右側に表示されます。下へスクロールして [もっと見る] をクリックします。
    システムインクルードの数戻り値の数レポートタイプがリストに含まれて表示されます。
  18. [戻り値の数] をクリックして、デフォルトのしきい値が 2 に設定されていることを確認します。