内部的なコーディング ポリシーを実装するために、組織が自動静的解析ツールを導入することはよくあります。通常そのようなコーディング ポリシーはコーディング規約とベスト プラクティスをまとめた文書に基づいており、独自の方法で問題と重要度を分類しています。

既存の文書の内容については開発グループがすでにレビュー済みです。そのため、既存の文書のルールの説明と ID を利用することが、ほとんどの場合に静的解析ツールで最も確実にコーディング ポリシーを実装する方法です。「実際に使用/共有するルール」を「既存のコーディング ポリシー文書の内容」に正確に一致させることができるよう、C/C++testには、ルール ID やルール名をカスタマイズしたり、新規にルール カテゴリを作成するための使いやすい機能が用意されています。

このマッピングは、ルール マップ ファイルによって実装されます。ルール マップ ファイルは、ローカルに使用することも、インポート/エクスポートすることも、非推奨の Team Server にデプロイしてチーム全体で使用することもできます。

DTP のルール マップ

DTP に保存されたテスト コンフィギュレーションを使用している場合、ルール マッピングの管理、カスタマイズ、適用の詳細については『DTP ユーザー ガイド』の「ルール マップ」セクションを参照してください。

このセクションの内容

ルール マッピングの指定

ルール マッピングを指定するには、次の操作を行います。

  1. [Parasoft] メニューの [テストコンフィギュレーション] をクリックし、[テスト コンフィギュレーション] ダイアログを開きます。
  2. 任意のテストコンフィギュレーション カテゴリを選択します。
  3. [静的] > [Rules Tree] タブをクリックします。
  4. [ルール マップ ファイルの編集] ボタンをクリックします。
  5. ルールマップ ファイルの編集ダイアログで、ルール マッピングを入力します。
    • ルール ID 、ヘッダー、重要度レベルを変更するには: [ルール] タブでエントリを追加します。1 つのマップ エントリは、指定のビルトイン ルールのカテゴリ ID または重要度レベルを変更する 1 つのルール マップを定義します。CATEGORY-ID の形式で現在のルール ID ( たとえば SECURITY-01 など) を [オリジナル ID] 列に入力した後、必要な変更を加えます。

      • ルール ID を変更するには、[マップされた ID] 列にルール ID を入力します。
      • 重要度を変更するには、[重要度] ドロップダウン リストから重要度を選択します。
      • ルール名を変更するには、[ヘッダー] 列にルール名を入力します。

        ルール ID を変更すると、新しいカテゴリが自動的に作成されます。その場合、下記の説明にあるように、[カテゴリ] タブで、新しいカテゴリごとに詳細を指定する必要があります。 詳細を指定しないと、ルールは UNKNOWN カテゴリに追加されます。

    • ルールのクローンを作成するには (ルールのクローンを作成して、たとえば異なるパラメータライズド ルールを作成する場合など) : [クローン] タブでエントリを追加します。クローンの作成は、1 つのルール インスタンスを複数の ルール ID にマップするのに役立ちます。  現在のルール ID ( たとえば BD.MISC-TRANS など) を[オリジナル ID] 列に入力し、クローン後のルール ID (たとえば ACME-TRANSなど) を [クローン ID] 列に入力します。重要度レベルを指定するには、ドロップダウン リストからレベルを選択します。注意: クローンが適用されるのは、たとえば「フロー解析」ルールなど、RuleWizard で編集できないルールだけです。RuleWizard で編集できるルールを複製するには、「既存ルールのカスタマイズと新規ルールの作成」の説明にある方法で複製してください。

    • 新しいルール カテゴリを追加するには : [カテゴリ] タブでエントリを追加します。[カテゴリ ID] 列にカテゴリの ID を入力し、[カテゴリ詳細] 列に簡単な説明を入力します。

GUI で入力したルール マッピングは、rulemap.xml という単純なテキスト ファイルとして [設定] パネル ([Parasoft] > [設定] ページ) で指定されたユーザー定義のルール フォルダーに保存されます。

既存のルールをコピーしてルール ID や重要度レベルを変更するには

ルール ツリーでルールを右クリックし、[複製] をクリックします。複製されたルールがルール ツリーに追加されます。必要に応じてルールをカスタマイズできます。

ルール マッピングの共有

Parasoft Team Server (非推奨)

このセクションで説明されている機能は非推奨になりました。

Team Server を使用している場合にルールの変更をチーム メンバー間で共有するには、Team Server に rulemap.xml ファイルをアップロードします。

Team Server にファイルをアップロードする方法については、

ローカルの rulemap.xml ファイルとチームの rulemap.xml ファイルの両方にマシンがアクセスする場合、チームのrulemap.xml ファイルが優先されます。

エクスポート/インポートによる共有

Team Server がない場合でも、ルール マッピングをエクスポート/インポートしてルール マッピングを共有できます。

ルール マッピングをエクスポートするには、次の操作を行います。

  1. テスト コンフィギュレーションを開き、[静的] > [ルール ツリー] タブの [ルール マップ ファイルの編集] ボタンをクリックします。
  2. [エクスポート] ボタンをクリックし、ルール マップ ファイルの保存先を指定します。

ルール マッピングをインポートするには、次の操作を行います。

  1. テスト コンフィギュレーションを開き、[静的] > [ルール ツリー] タブの [ルール マップ ファイルの編集] ボタンをクリックします。
  2. [インポート] ボタンをクリックし、ルール マップ ファイルを選択します。
  • No labels