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

-compiler <name|path>

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

:

  • cpptestcc -compiler gcc_3_4 
  • cpptestcc -compiler vc_11_0 

-listcompilers

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

コンフィギュレーション ファイルの書式: cpptestcc.listCompilers

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

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

最終的なフィルター結果は、すべてのinclude/exclude エントリが仕様の順序で指定された後に決定されます。

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

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

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

コンフィギュレーション ファイルの書式: cpptestcc.include <path|pattern>

例 1:

次のプロジェクトがあると仮定します。: <project root> + external_libs + src + include

次の cpptestcc コマンドを実行すると、external_libs ディレクトリのすべてのファイルがインストゥルメント範囲から除外されます。:cpptestcc -include regex:*/<project root>/* -exclude regex:*/<project root>/external_libs <remaining part of cmd>

例 2:

次のプロジェクトがあると仮定します。: <project root> <sourcefiles>.cpp <headerfiles>.hpp

次のコマンド ラインを実行すると、ソース ファイルはインストゥルメントされず、ヘッダー ファイルだけがインストゥルメントされます。: cpptestcc -include regex:* -exclude regex:*.cpp <remaining part of cmd>

-ignore <pattern>

<pattern> で指定されたパターンに一致するすべてのソース ファイルを処理中に無視します。このオプションは複数回指定できます。

指定されたパターンに一致するファイルはパースもインストゥルメントもされませんが、オリジナルの形式にコンパイルされます。

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

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

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


コンフィギュレーション ファイルの書式: 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>

-ignore と -include/-exclude の使い分け

-ignore オプションの機能と -include/-exclude オプションの機能が重なっているように感じられるかもしれません。違いは、-ignore オプションは指定されたファイルを完全に処理から除外するため、ファイルがカバレッジ エンジンによってパースされない一方で、-include/-exclude フィルターはソース コードがパースされた後に適用されるため、ヘッダー ファイルを選択的にインストゥルメントしたり、インストゥルメントしなかったりできることです。 

-line-coverage

行カバレッジ メトリクスを有効にします。

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

コンフィギュレーション ファイルの書式: cpptestcc.lineCoverage

-optimized-line-coverage

最適化された行カバレッジ メトリクスを有効にします。

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

コンフィギュレーション ファイルの書式: cpptestcc.optimizedLineCoverage

-workspace <path>

コード解析およびインストゥルメントを行うときに使用するワークスペース ディレクトリを指定します。

ワークスペースの場所は、最終的なカバレッジ レポートの生成に必須のコード構造情報を格納する場所として使用されます。cpptestcc ツールの呼び出しと cpptestcli ツールの呼び出しで同じワークスペースの場所を使用する必要があります。

コンフィギュレーション ファイルの書式: cpptestcc.workspace <path>

-psrc <file>

cpptestcc ツールの詳細なオプションを保存した設定ファイルの場所を指定します。

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

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

-fail

静的解析または単体テストの指摘事項がレポートされた場合、ゼロ以外の終了コードを生成します (詳細については「コマンド ラインの終了コード」を参照)。

-help

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

コンフィギュレーション ファイルの書式: cpptestcc.help

  • No labels