Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

C++testの静的解析の1つに重複コード検出機能があります。この機能を用いて、一括でコピーコードを検出しましょう。

このページの内容:

Table of Contents
minLevel1
maxLevel7

Anchor
_Toc14164529
_Toc14164529
解析実行手順

  1. [プロジェクト・エクスプローラー]ビュー上のプロジェクトを選択した状態で、[青い三角アイコン横の▼]>[テストの実行]>[ユーザー定義]>[Static Analysis]>[3 3_Find Duplicated Code_(チュートリアル)]を選択します。緑の進捗バーが表示され、左から右に到達すると解析が完了になります。
    ※バージョンにあったテストコンフィギュレーションを用意しています。

  2. [品質タスク]ビューに解析結果が表示されます。

Anchor
_Toc14164530
_Toc14164530
解析結果の見方

解析結果は、[品質タスク]ビューに表示され、下図に示す3つのポイントで確認します。
また、[品質タスク]ビュー上で「違反が検出されたソースファイル行」をダブルクリックすると、[比較]エディタが表示され、重複しているコード内容を確認することができます。

Anchor
_Toc14164531
_Toc14164531
重複コード検出機能 運用ワンポイント アドバイス

重複コード自体は、バグではありません。しかし、バグのあるコードをコピーし使いまわしてしまった場合、バグをちりばめる行為になります。また、コード量を余分に増やす行為であるため、メモリの使用量やテスト工数を余分に消費する事にもなります。
そのため重複コード検出結果から、少なくとも「関数の重複」が存在する場合、リファクタリングする事をお勧めします。