...
を防止するために、バグ作り込みの防止や、ソースファイルの可読性向上を目的とした「コーディング規約」が存在します。
その中でも、ソフトウェア開発現場で利用されている「コーディング規約」で解析を行ってみましょう。
このページの内容:
Table of Contents | ||||
---|---|---|---|---|
|
Anchor | ||||
---|---|---|---|---|
|
ここで利用するC++test機能は、コーディングルールチェック機能になります。コーディングルールチェック機能は、4300種類以上のルールを搭載test機能は、コーディングルールチェック機能になります。コーディングルールチェック機能は、4300種類以上のルールを搭載しており、
しており、CC/C++両言語を解析します。
図に記載されている一部のルールカテゴリは、コンプライアンスパック(別売り)のライセンスをアクティベートする必要があります。 下記に記載されているルールセットを使用したい場合は、
"コンプライアンスパック"をご検討ください
[コンプライアンスパックが必要なルールカテゴリ]
AUTOSAR C++14 Coding Guidelines
フロー解析[BD]における[BD-SECURITY]カテゴリ
SEI CERT C/C++
Common Weakness Enumeration
High Integrity C++
Joint Strike Fighter
MISRA C 1998
MISRA C 2004
MISRA C++ 2008
MISRA C 2012
OWASP Top 10 Most Critical Web Application Security Risks (2017)
OWASP API Security Top 10 (2019)
OWASP Top 10 Most Critical Web Application Security Risks (2021)
セキュリティ
...
Anchor | ||||
---|---|---|---|---|
|
[ナビゲータープロジェクト・エクスプローラー]ビュー上の”Shapes”を選択した状態で、ビュー上のプロジェクトを選択した状態で、[青い三角アイコン横の▼]>[テストの実行]>[ユーザー定義]>[Static Analysis]>[2 2_コーディング規約チェック(チュートリアル)]を選択します。緑の進捗バーが表示され、左から右に到達すると解析が完了になります。
[品質タスク]ビューに解析結果が表示されます。
...
解析結果は、[品質タスク]ビューに表示され、下図に示す3つのポイントで確認します。
...
Anchor | ||||
---|---|---|---|---|
|
...
[Parasoft]>[テストコンフィギュレーション]を選択します。
表示される画面左側の[ユーザー定義]>[Static Analysis]>[2_コーディング規約チェック(チュートリアル)]を右クリックし、[複製]を選択します。
生成される[ユーザー定義]>[Static Analysis]>[2_コーディング規約チェック(チュートリアル) (1)]を選択後、画面右側の[静的]>[ルールツリー]を選択し、表示します。
画面右にある[有効なルールのみ表示]を選択するとチェックの入っているルールのみが表示されます。
[2_コーディング規約チェック(チュートリアル)(1)]カテゴリのチェックボックスを全て無効にします。[すべてのルールの表示]を選択します。を選択します。※これまでの変更を保存するかどうかダイアログが表示されるため、保存して続行します。
[フィルター]に「暗黙」と入力します。名前に「暗黙」が含まれているルールが表示されます。
[コーディング規約]、[バグの可能性]カテゴリのルールの内、暗黙的なキャストを違反として検出するルールであることを確認し、チェックボックスを有効にします。
[名前]に「5_USER_RULES」テストコンフィギュレーションを入力します。
[適用]を選択後、[閉じる]を選択します。
...
[静的解析ルールアイコン(赤い帽子)]を右クリックし、[ルールドキュメントを参照]を選択します。
[静的解析ルールアイコン(赤い帽子)]を右クリックし、[ルールドキュメントを参照]を選択します。
ブラウザが開き、下記の情報が表示されます。
ルール名
ルールの説明
利点
違反サンプルコード
違反修正例
関連資料やルールの引用元
...
正当なレビュー結果から、次回違反として検出したくない解析結果を右クリックし、[タスクの抑制]を選択します。
正当なレビュー結果から、次回違反として検出したくない解析結果を右クリックし、[タスクの抑制]を選択します。抑制情報を格納する先を指定します。
抑制ファイル内で抑制 :ファイル形式で抑制情報を格納します。
ソースコード内での抑制 :抑制情報をコメント形式でソースコードに格納します。
[抑制された理由]画面が表示されたら、[理由]を入力します。
[OK]を選択します。