以下のオプションがあります。

(info) 次のコマンドを実行して、利用可能なオプションをコンソールに出力できます。cpptestcc -help

-compiler <name|path>

コード解析およびインストゥルメントで使用するコンパイラ コンフィギュレーション名を指定します。サポート対象コンパイラについては「サポート対象コンパイラ」を参照するか、-listcompilers オプションを使用してください。

コンフィギュレーション ファイルの書式 (-psrc を参照): cpptestcc.compiler <name>

:

cpptestcc -compiler gcc_9-64 

cpptestcc -compiler vc_11_0 

-listcompilers

サポート対象のすべてのコンパイラ コンフィギュレーション名を出力します。

コンフィギュレーション ファイルの書式 ( -psrc を参照): cpptestcc.listCompilers

-include <file|pattern> と -exclude <file|pattern>

指定されたパターンに一致するファイルをインストゥルメント範囲に含めます/範囲から除外します。このオプションは複数回指定できます。

最終的なフィルタリングは、すべての include/exclude を指定された順序で適用した結果によって決まります。

次のワイルドカードがサポートされています。

  • ? - 任意の 1 文字
  • * - 任意の文字の連続

シェルが * ワイルドカードをファイルまたはディレクトリのリストに展開するのを防ぐには、regex: 接頭辞を使用して値を指定します。

(info) このオプションは複数回指定できます。

コンフィギュレーション ファイルの書式 (-psrc を参照): cpptestcc.include <path|pattern>

例 1:

次のプロジェクトがあると仮定します:

<project root> + external_libs + src + include

次のコマンドを実行すると、external_libs ディレクトリのすべてのファイルがインストゥルメント範囲から除外されます:

cpptestcc -include regex:*/<project root>/* -exclude regex:*/<project root>/external_libs <other command line options>

例 2:

次のプロジェクトがあると仮定します:

<project root> <sourcefiles>.cpp <headerfiles>.hpp

次のコマンドを実行すると、ソース ファイルはインストゥルメントされず、ヘッダー ファイルだけがインストゥルメントされます:

cpptestcc -include regex:*-exclude regex:*.cpp <remaining part of cmd>

-ignore <pattern>

処理中に無視するソース ファイルを指定します。指定されたパターンに一致するすべてのソース ファイルを処理中に無視します。

-ignore と -exclude

-ignore オプションは指定されたファイルを完全に処理から除外するため、ファイルがカバレッジ エンジンによってパースされません。

-include/-exclude フィルターはソース コードがパースされた後に適用されるため、ヘッダー ファイルを選択的にインストゥルメントしたり、インストゥルメントしなかったりできます。

-ignore オプションを使用すると、一部のコード セクション (たとえば外部ライブラリなど) のカバレッジ解析を無視することでカバレッジ解析ビルド時間のオーバーヘッドを短縮したり、処理中にパース エラーや他の問題の原因となる特定のファイルを無視できます。

次のワイルドカードがサポートされています。

  • ? - 任意の 1 文字
  • * - 任意の文字の連続

シェルが * ワイルドカードをファイルまたはディレクトリのリストに展開するのを防ぐには、regex: 接頭辞を使用して値を指定します。

(info) このオプションは複数回指定できます。

コンフィギュレーション ファイルの書式 (-psrc を参照): cpptestcc.ignore <path|pattern>

例:

cpptestcc -ignore "*/Lib/*" <remaining part of cmd>
cpptestcc -ignore regex:*/file.c <remaining part of cmd>
cpptestcc -ignore c:/proj/file.c <remaining part of cmd>
cpptestcc -ignore "*/MyLib/*.cpp" -ignore file.cpp <remaining part of cmd>

-line-coverage

行カバレッジを有効にします。

ランタイム カバレッジの結果は、コード実行と同時に結果ログに書き込まれます。これによってテスト対象コードの実行時間にオーバーヘッドが加わりますが、アプリケーションがクラッシュした場合でもカバレッジ データが収集されることを保証できます。

コンフィギュレーション ファイルの書式 ( -psrc を参照): cpptestcc.lineCoverage

-optimized-line-coverage

最適化された行カバレッジの収集を有効にします。

ランタイム カバレッジの結果はメモリに格納され、アプリケーションの終了後またはユーザーが要求したときに結果ログに書き込まれます。これによってパフォーマンスが向上しますが、アプリケーションがクラッシュした場合は結果が失われます。

コンフィギュレーション ファイルの形式 ( -psrc を参照): cpptestcc.optimizedLineCoverage

-coverage-early-init

アプリケーション エントリ ポイントの開始時にカバレッジ モジュールの初期化を有効にします。

コンフィギュレーション ファイルの書式 (-psrc を参照): cpptestcc.coverageEarlyInit [true|false]

-coverage-auto-finalization

このオプションを有効にすると、カバレッジの収集はアプリケーションの終了時に自動的に終了します。このオプションはデフォルトでオンです。

コンフィギュレーション ファイルの書式 (-psrc を参照): cpptestcc.coverageAutoFinalization [true|false]

-optimized-coverage-corruption-detection

最適化されたカバレッジ メトリクスの破損検出アルゴリズムを有効にします。

コンフィギュレーション ファイルの書式 (-psrc を参照): cpptestcc.optimizedCoverageCorruptionDetection [true|false]

-template-coverage

テンプレート クラスおよびテンプレート関数のカバレッジの収集を有効にします

コンフィギュレーション ファイルの書式 (-psrc を参照): cpptestcc.templateCoverage [true|false]

-constexpr-coverage

constexpr 関数のカバレッジ収集を有効化します。
コンフィギュレーション ファイルの書式 (「-psrc」を参照): cpptestcc.constexprCoverage [true|false]
C/C++test はランタイムに実行された 'constexpr' 関数のコード カバレッジを収集できます。コンパイル時にだけ使用される 'constexpr' 関数に対しては、カバレッジはレポートされません。
注意: C++ の 'constexpr' 関数のコード カバレッジ収集は、以下のコンパイラだけでサポートされています。

  • C++14 (またはそれ以降) モードの GCC 9.x 以降
  • Clang 9.0.x 以降
  • Visual C++ 2019 以降

-coverage-data-variants

同じソース ファイルの異なるコンパイルに対応する複数のカバレッジ データを保存できるようにします。

デフォルトでは、cpptestcc は各ソース ファイルのカバレッジ データをビルドごとに 1 つ収集します。まれに、1 回のビルドで 1 つのソース ファイルが複数回コンパイルされるケースでは、このオプションを使用し、同じソース ファイルに対してコンパイルごとに異なる複数のカバレッジ データを保存できます。

このオプションは、同じソース ファイルを複数回コンパイルすることで、コードの競合が発生するシナリオをサポートしていません。

-disable-auto-recovery-mode

カバレッジ インストゥルメントの自動リカバリー モードを無効にします。

デフォルトでは、ファイルを正常にインストゥルメントできない場合、ビルドでは元の (インストゥルメントされていない) ファイルが使用されます。このオプションを有効にすると、インストゥルメントの問題が起きた場合、ビルドはエラーで失敗します。

-workspace <path>

コード解析およびインストゥルメントを行うときに使用するカスタム ディレクトリを指定します。cpptestcli ツールは、最終的なカバレッジ レポートを生成するためにこの情報を使用します。

デフォルトでは、情報は現在のコンパイルの作業ディレクトリに保存されます。コンパイルで複数の作業ディレクトリを使用する場合、すべてのカバレッジ データが同じ場所に格納されるように、カスタム ディレクトリを指定することを推奨します。cpptestcc ツールの呼び出しと cpptestcli ツールの呼び出しで同じワークスペースの場所を使用する必要があります。

コンフィギュレーション ファイルの書式 (-psrc を参照): workspace <path>

-techsupport

 ワークスペースから収集された診断ファイルを含むアーカイブを作成します (「-workspace」を参照)。アーカイブは現在の作業ディレクトリに保存されます。

例:

cpptestcc -techsupport

cpptestcc -techsupport -workspace path/to/workspace-dir

-psrc <file>

追加の cpptestcc オプションを設定できる設定ファイルへのパスを指定します。

デフォルトでは、cpptestcc ツールは現在の作業ディレクトリまたはユーザーの HOME ディレクトリにある .psrc ファイルを読み取ります。このオプションを使用すると、設定ファイルの場所を任意に指定できます。

(info) オプションがコマンドラインと設定ファイルの両方で設定されている場合、cpptestcc はコマンドラインで指定された値を使用します。

コンフィギュレーション ファイルの書式: pscom.psrc <file>

-status

-status-verbose

エラーおよび警告情報、ファイル数など、ワークスペース (「-workspace」を参照) から収集された診断情報を表示します。

より詳細な情報を表示するには、-status-verbose を使用します。

例:

cpptestcc -status

cpptestcc -status -workspace path/to/workspace-dir

cpptestcc -status-verbose

cpptestcc -status-verbose -workspace path/to/workspace-dir

-help

ヘルプ メッセージを出力して終了します。

コンフィギュレーション ファイルの書式 ( -psrc を参照): cpptestcc.help


  • No labels