このページの内容は最新ではありません。最新版の英語を参照するには、ここをクリックします。
コマンド ラインで Polyspace as You Code の結果をベースラインとして設定する
バグ修正を効率化するために、ローカル ベースラインを作成するか、Polyspace® Access™ から以前の Polyspace Bug Finder 解析をダウンロードしてベースラインとして使用できます。ベースラインを使用するには、新しい結果、または現在の Polyspace as You Code 解析でレビューされていない結果と、ベースライン結果を比較します。
ベースラインに表示される結果は、解析が行われたバージョンでの結果に限定されます。たとえば、R2024a 解析の結果のベースラインには、R2024b 解析と異なる結果が含まれる可能性があります。Polyspace の別のバージョンによるベースラインを使用すると、Polyspace as You Code に警告が表示されます。Polyspace Code Prover™ 解析の結果を Polyspace as You Code でベースラインとして使用することはできません。
メモ
常に最新のベースライン情報を使用するために、Polyspace Access から結果をダウンロードするコマンドを定期的に実行してください。手順 2: ベースラインのダウンロードを参照してください。
ベースライン結果の内容
ベースラインの設定の効果は、結果をコンソールまたは JSON 形式 (SARIF) のどちらにエクスポートするかによって異なります。これらの形式についての詳細は、polyspace-results-export
(Polyspace Bug Finder) を参照してください。
コンソール出力
Polyspace Access で正当化されている、[ステータス] が [アクションの予定なし]、[正当化済み]、または [欠陥ではない] の結果は、コンソール出力に表示されなくなります。
JSON 出力
以下の説明での
は Polyspace の結果からエクスポートされる JSON オブジェクトを表しています。obj
結果が新しいものであり、Polyspace Access にまだ存在していない場合、対応するプロパティ
がobj
.runs[0].results[n
].baselineState"new"
に設定されます。それ以外の場合、このプロパティは"baselineState" : "new"
"unchanged"
に設定されます。結果のレビュー情報 ([ステータス]、[重大度]、追加のメモ) が、Polyspace Access から
の対応するプロパティに引き継がれます。obj
.runs[0].results[n
].propertiesたとえば、ベースラインを使用しない場合にはこれらのプロパティは次のようになります。
ベースラインを使用する場合、"severity" : "Unset", "status" : "Unreviewed", "comment" : ""
severity
は"Unset"
ではなく、status
は"Unreviewed"
ではない可能性があります。Polyspace Access で正当化されている、[ステータス] が [アクションの予定なし]、[正当化済み]、または [欠陥ではない] の結果は、プロパティ
がobj
.runs[0].results[n
].properties.justifiedtrue
に設定された状態で表示されます。"justified" : true
ベースラインの設定手順
Polyspace Bug Finder™ Server™ の結果を Polyspace as You Code 解析のベースラインとして使用するには、次の手順に従います。
手順 1: ベースラインとして使用するプロジェクトの特定
最初に、ベースラインとして使用するプロジェクトを Polyspace Access で特定します。このプロジェクトには、Polyspace as You Code で解析するファイルに対する Polyspace Bug Finder Server 解析の結果が含まれていなければなりません。
ベースラインとして使用するプロジェクトのパスをコピーします。このパスをコピーするには、次のようにします。
Web ブラウザーで Polyspace Access Web インターフェイスを開きます。
[プロジェクト エクスプローラー] ペインでプロジェクトを右クリックし、[プロジェクト パスをクリップボードにコピー] を選択します。
手順 2: ベースラインのダウンロード
次に、Polyspace Access プロジェクトからベースライン情報をダウンロードします。たとえば、ターミナルで以下を入力します。
polyspace-access -host hostname -download projectPath -output-folder-path downloadFolder
は、Polyspace Access サーバーの名前です。hostname
は、ベースラインとして使用する Polyspace Access のプロジェクトのパスです。この名前は、Polyspace Access Web インターフェイスから既にコピーしています。projectPath
は、ベースライン情報をダウンロードするフォルダーです。downloadFolder
ダウンロードの完了後には、結果 (ps_results.psbf
)、ソース ファイル (ps_sources.db
)、レビュー情報 (ps_comments.db
) の 3 つのデータベースがフォルダーに含まれています。結果を Polyspace ユーザー インターフェイスで開くことや、Polyspace as You Code 実行のベースライン以外の方法で使用することはできません。
フォルダーには、Access プロジェクトの情報と、ベースラインとして使用された実行 ID を含むファイル ps_access_info.json
も含まれています。必要に応じて、Polyspace Access のプロジェクトの最新実行 ID とこの実行 ID を比較するスクリプトを作成し、ワークフローの特定の時点でこのスクリプトを実行することで、常にこのプロジェクトの最新実行をベースラインとして使用できます。
手順 3: ベースラインの使用
ベースラインのダウンロードが完了したら、オプション -import-comments
を使用して、ダウンロードしたベースライン情報を現在の解析にインポートします。ターミナルで以下を入力します。
#Linux command polyspace-bug-finder-access -sources filename -import-comments downloadFolder \ -results-dir#DOS command polyspace-bug-finder-access.exe -sources filename -import-comments downloadFolder ^ -results-dir
resultsFolder
resultsFolder
ここで:
は、解析される現在のファイルです。filename
は、以前にベースライン情報をダウンロードしたフォルダーです。downloadFolder
は、解析結果を保存するフォルダーです。resultsFolder
polyspace-results-export
コマンドを使用して解析結果をエクスポートするときに、ベースラインの使用効果を確認できます。次に例を示します。
polyspace-results-export -format console -results-dir resultsFolder
参考
polyspace-bug-finder-access
| polyspace-results-export
(Polyspace Bug Finder)