Main Content

このページの内容は最新ではありません。最新版の英語を参照するには、ここをクリックします。

既存の Polyspace Access プロジェクトからのレビュー情報のインポート

このトピックでは、Polyspace® Access™ の以前の結果からレビュー情報をインポートする方法について説明します。Polyspace Access にアップロードされていない結果からのインポートの詳細については、以前の Polyspace 解析からレビュー情報をインポート (Polyspace Bug Finder)を参照してください。

Polyspace Access プロジェクトで調査結果をレビューし、これらの調査結果を含む同じソース コードを別のプロジェクトで再利用する場合は、既存のレビュー情報を別のプロジェクトにインポートできます。別のプロジェクトで調査結果をもう一度レビューする必要はありません。インポート元のプロジェクトがソース プロジェクトになります。インポート先のプロジェクトがターゲット プロジェクトになります。

たとえば、チームが Polyspace Access プロジェクト components/oldProject (BF) でファイル customClass.cpp のすべての調査結果をレビューしたとします。customClass.cpp を別のプロジェクトで使用する場合、[ステータス][重大度] などのレビュー情報を components/oldProject (BF) プロジェクトから別のプロジェクトにインポートできます。

インポート時に、Polyspace Access はターゲット プロジェクトの結果の各ファイル名を、ソース プロジェクトの結果のファイル名と比較します。ターゲット プロジェクトの結果の各ファイルについて、Polyspace はソース プロジェクトの結果で大文字と小文字の区別がある最適な一致を見つけようとします。大文字と小文字の区別がある一致が存在しない場合、Polyspace は最適な一致を見つけようとします。

最適な一致とは、ファイル名が同じファイルです。大文字と小文字を区別しない同じファイル名をもつファイルが複数ある場合、(解析時に) 最も長い共通のファイル パスをもつファイルがインポート用に選択されます。Polyspace でのファイル パスの比較はパスの末尾から行われます。Polyspace は最適な一致を 1 つのみ選択します。

たとえば、ファイル C:\Project1\example1\filename.cpp をインポートするとします。Polyspace は、このファイル パスを filename.cppexample1Project1C: のように、逆の順序で解析します。

この例で、以下の 2 つの一致が見つかったとします。

  • C:\Project2\example1\FileName.cpp

  • C:\Project2\example1\extraFiles\FileName.cpp

最初のファイル パスは、FileName.cpp (大文字小文字の区別なし) と example1 の順序で 2 つの要素が同じです。2 つ目のファイル パスは、FileName1.cpp (大文字小文字の区別なし) の順序で 1 つの要素のみが同じです。フォルダー extraFiles はどちらのパスでも同じではありません。そのため、Polyspace は最初のファイルを選択します。

実行をプロジェクトにアップロードすると、Polyspace Access によって、そのプロジェクトの以前の実行から新規にアップロードされた実行に、レビュー情報が自動的にインポートされます。

プロジェクト間でレビュー情報をマージする場合、以下の値がインポートされます。

  • ステータス

  • 重大度

  • 割り当て先

  • コメント

  • チケットのキー

Polyspace Access でのソース プロジェクトからターゲット プロジェクトへのレビュー情報のインポート

レビュー情報をソース プロジェクトからターゲット プロジェクトにインポートします。

  1. [プロジェクト エクスプローラー] でターゲット プロジェクトを右クリックし、[別のプロジェクトからレビューをインポート] を選択します。

  2. ソース プロジェクトを見つけて選択します。一度に 1 つのソースからのみインポートできます。

  3. 次のいずれかのインポート ポリシーを選択します。

    • ターゲット調査結果にレビューがない場合にレビューを書き込む

      ターゲットの調査結果のすべてのレビュー フィールドが空の場合にのみ、空ではないソース プロジェクトのレビュー情報をインポートします。

    • ソース レビューは常にターゲットを置き換えます

      ターゲット レビューに既にレビュー情報が含まれている場合でも、空ではないソース プロジェクトのレビュー情報をインポートして、ターゲット フィールドの内容を置き換えます。

  4. [OK] をクリックします。インポートの開始時と完了時に、[ダッシュボード] の上部にダイアログ ボックスが表示されます。大きなプロジェクトのインポートは、完了までに数分かかることがあります。

インポートされたレビューの確認と選択

[プロジェクトの概要] ダッシュボードの [結果を開く] をクリックすると、[結果のリスト] が表示されます。[ファミリ] 列で、レビュー情報がインポートされているプロジェクト結果の横にはアイコンが表示されます。このアイコンは、インポートされたレビューの現在の状態を示しています。インポートされたレビューの状態の説明を以下の表に示します。

アイコンステータスステータスの説明

not applied icon

非適用

ソース プロジェクトのレビュー情報がターゲット プロジェクトの調査結果に適用されていません。

overwritten icon

上書き済み

ソース プロジェクトのレビュー情報がターゲット プロジェクトの調査結果に適用されています。元のターゲット レビュー情報がソースで上書きされます。

written icon

書き込み済みソース プロジェクトのレビュー情報が、以前に空だったターゲット プロジェクトの調査結果に適用されています。

元のレビュー情報とインポートされたレビュー情報を切り替えることができます。使用するレビュー情報を決定するために、インポートされた結果情報と元の結果情報を並べて表示します。この方法で結果情報を表示するには、[インポートされたレビューの選択] ウィンドウを使用します。このペインにアクセスするには、次のようにします。

  • [結果のリスト] でレビューする結果を右クリックします。

  • [インポートしたレビューの選択を表示] を選択します。

[インポートされたレビューの選択] パネルには、[レビュー フィールド][元の値][インポートされた値] を表す 3 つの列があります。[元の値][インポートされた値] の横にあるラジオ ボタンを使って、調査結果に適用する値を簡単に選択できます。

インポートされたレビュー情報の確認

インポートされたレビュー情報は、手動で確認するまでは未確認と見なされます。結果情報は、個別に確認するかまたはグループとして確認することができます。

  1. [フィルター] リストを展開して [未確認のインポート] フィルターを選択します。

    unconfirmed imports icon

  2. 結果を選択します。複数の結果を選択するには、Ctrl キーを押した状態でそれらの結果をクリックします。複数の隣り合った結果を選択するには、Shift キーを押した状態で選択範囲の最初の結果と最後の結果をクリックします。

  3. 選択されている結果を右クリックし、コンテキスト メニューの [インポートしたレビューを確認] に移動して次のいずれかのオプションを選択します。

    オプションオプションの説明
    元の値を使用選択されているすべての結果について、ターゲットの調査結果で元のレビュー情報を維持します。このオプションが灰色表示になっている場合は、ターゲットの調査結果で元のレビュー情報が既に使用されています。
    インポートされた値を使用選択されているすべての結果について、ターゲットの調査結果にインポートされたレビュー情報を適用します。このオプションが灰色表示になっている場合は、ターゲットの調査結果でインポートされたレビュー情報が既に使用されています。
    現在の選択を確認現在設定されているレビュー情報を確認します。このオプションが灰色表示になっている場合は、ターゲットの調査結果が既に確認されています。

場合によっては、結果のレビュー履歴を把握しておくと役立ちます。[レビュー履歴] ペインを開くには、[結果の詳細] ペインで show review history icon アイコンをクリックします。[レビュー履歴] には、編集者の名前や編集時刻など、個々の結果の詳細の変更に関する情報が表示されます。Polyspace Access Web インターフェイスのレビュー履歴を参照してください。

コマンド ラインでのレビュー情報のインポート

既存のプロジェクトのレビュー情報を、レビュー済みの調査結果を含むコードを再利用する別のプロジェクトにインポートするには、コマンド polyspace-access -import-reviews を使用して以下を指定します。

  • レビュー情報のインポート元プロジェクト (ソース プロジェクト) の絶対パス。

  • レビュー情報のインポート先プロジェクト (ターゲット プロジェクト) の絶対パス。

  • 必要に応じて、次のインポート方法のいずれかを指定できます。

    • never-overwrite-target (既定) — ターゲット プロジェクトのレビュー フィールドが既に入力されている場合、そのレビュー フィールドをソース プロジェクトの内容で上書きすることはしません。

    • always-overwrite-target — ターゲット プロジェクトのレビュー フィールドが既に入力されている場合でも、そのレビュー フィールドの内容を常に上書きします。

たとえば、プロジェクト public/example/branchA で既に調査結果をレビューしており、レビュー済みのコードをプロジェクト public/example/branchB で再利用する場合には、以下のコマンドを使用して branchA から branchB にレビュー情報をインポートします。

polyspace-access $login -import-reviews public/example/branchA \
 -to-project-path public/example/branchB
ここで、$login は、ログイン資格情報やその他の接続情報を格納する変数です。この変数を構成するには、パスワードの暗号化とログイン オプションの変数への格納を参照してください。

インポートが完了したら、インポート操作の結果を調べることをお勧めします。オプション -imported-reviews を指定した polyspace-access -export コマンドを使用して、以下のいずれかの値で絞り込みます。

  • Not applied — レビュー情報はソース プロジェクトからインポートされたものですが、ターゲット プロジェクトのレビュー フィールドは元の値のままです。

  • Written — ターゲット プロジェクトのレビュー フィールドが以前に空だった場合に限り、ソース プロジェクトのレビュー情報がターゲット プロジェクトに書き込まれます。

  • Overwritten — ターゲット プロジェクトのレビュー フィールドが以前に空でなかった場合にも、ソース プロジェクトのレビュー情報がターゲット プロジェクトに書き込まれます。

  • Unconfirmed — インポート操作の結果がレビュー担当者によって確認されていない調査結果を選択する場合に、このフィルターを使用します。インポート操作の結果は、Polyspace Access インターフェイスで確認します。インポートされたレビュー情報の確認を参照してください。

たとえば、レビュー情報が上書きされているターゲット プロジェクトの調査結果リストを取得するには、以下のコマンドを入力します。

polyspace-access $login -export public/example/branchB \
 -imported-reviews Overwritten -output overWrittenReviews.txt 
このコマンドが出力するタブ区切り値 (TSV) ファイル overWrittenReviews.txt には、ターゲット プロジェクトでレビュー情報が上書きされている調査結果のみが含まれています。

参考

| (Polyspace Bug Finder)

関連するトピック