このセクションでは、C/C++test のビルトイン静的解析ルールについて説明します。
このセクションの内容
ルール カテゴリ
C/C++test には、C/C++ 言語の専門家による知識に基づいた数多くの静的解析ルールが用意されています。C/C++test の静的解析ルールは、不適切な C/C++ 言語の使用によるバグの可能性を特定したり、コーディングのベスト プラクティスを推進したり、コードの保守性と再利用性を高めるために有用です。C/C++test の静的解析ルールは次のようにカテゴリ分けされています。 フロー解析 [BD]、コーディング規約 [CODSTA]、重複コードの検出 [CDD]、最適化 [OPT]、セキュリティ [SECURITY]、ほか多数
ルールの説明の参照
C/C++test に付属の静的解析ルールについては、[Parasoft] メニューの [ ヘルプ] をクリックして 『Parasoft C++test 静的解析ルール ガイド』ブックを参照してください。
テスト コンフィギュレーションで有効に設定されている静的解析ルールのリストとその説明を参照するには、次の操作を行います。
- [Parasoft]メニューの [テスト コンフィギュレーション] をクリックするか、[テストの実行] ツールバー ボタンのドロップダウン メニューで [テスト コンフィギュレーション] をクリックしてテスト コンフィギュレーション ダイアログを開きます。
- ルール リストを参照するテスト コンフィギュレーションを選択します。
- [静的] タブをクリックします。
- [有効なルールの一覧] ボタンをクリックします。
ルールのリストおよび関連付けられたすべてのルールの説明を印刷するには、ブラウザーの [リンク ドキュメントをすべて印刷する] プリンター オプションを有効にしてから、メインのルールのリストを印刷します。
重要度レベル
各ルールには重要度レベルが設定されています。重要度レベルは、そのルールによって深刻な構造エラー (パフォーマンスの低下、メモリ リーク、セキュリティ脆弱性などのアプリケーションの問題の原因になるコード構造) が引き起こされる可能性を表します。重要度レベルは以下のとおりです。レベル 1 が最も違反の深刻度が高いレベルです。
- 最高 - レベル 1
- 高 - レベル 2
- 中 - レベル 3
- 低 - レベル 4
- 最低 - レベル 5
カスタム ルール
C/C++test では、RuleWizard という付属ツールを使って設計したユーザー定義ルールをチェックす ることもできます。RuleWizard を使用すれば、フローチャートのようなルール表現を作成してグラフィカルにルールを作成するか、単純なルール違反のコードから自動的にルールを作成できます。ユーザー定義ルールを作成してチェックすることで、チームはプロジェクトや組織に固有の要件を検証するだけでなく、最も一般的なエラーの再発を防止できます。
RuleWizard を使用してビルトイン静的コード解析を変更したり、ルールを追加することもできます。カスタム コーディング ルールの作成については 「既存ルールのカスタマイズと新規ルールの作成」を参照してください。
設定
このセクションでは、Parasoft 設定パネルの C/C++test 固有の設定について説明します。
このセクションの内容
全般的な設定 - パスのプロジェクト コンテナーを無視する
最上位ノードを選択すると、パス中のソリューションおよびソリューション フォルダー名を無視するかどうかを指定できます。この設定を変更する場合、ソリューションとプロジェクトの構造が正しく表示されるよう、IDE を再起動することを推奨します。
以下の場合、[パス中のソリューションおよびソリューション フォルダー名を無視する] オプションをオンにすることが推奨されます。
- メインの開発単位がプロジェクトである
- 開発者はソリューションの規約を持っておらず、ソリューション設定を共有していない
- 多数のソリューションに同じプロジェクトが含まれる
- 開発者は多数の異なるソリューションで使用されるプロジェクトおよびリソースを共有したいと考えている
このモードでのパス
/User Interface/Program.cs
/Connector/Program.cs
以下の場合、このオプションをオフのままにすることを推奨します。
- メインの開発単位がソリューションである
- ソリューションが複数の開発者に共有される
- 各ソリューションにはプロジェクトおよびリソースに適用される固有の設定がある
このモードでのパス
/My Solution/Common/User Interface/Program.c
/My Solution/Engine/Connector/Program.c
この設定は、Team Server (利用可能な場合) によって共有されます。チームに単独のデスクトップしかない場合 (Team Server に接続されていない場合)、このオプションは各ユーザーによってローカルで制御されます。このオプションはすべてのエディションで設定可能です。
ファイル エンコーディングの設定
ファイル エンコーディング パネルでは、BOM シグネチャのないファイルのエンコーディングを指定できます。システム デフォルトを使用するか、特定のエンコーディングを指定するか、特定の極東言語を自動検出するかを選択できます。