以下のオプションがあります。
次のコマンドを実行して、利用可能なオプションをコンソールに出力できます。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:
接頭辞を使用して値を指定します。
このオプションは複数回指定できます。
コンフィギュレーション ファイルの書式 (-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:
接頭辞を使用して値を指定します。
このオプションは複数回指定できます。
コンフィギュレーション ファイルの書式 (-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
ファイルを読み取ります。このオプションを使用すると、設定ファイルの場所を任意に指定できます。
オプションがコマンドラインと設定ファイルの両方で設定されている場合、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