このセクションの内容

全般

コマンド ラインの使用方法をすばやく参照する方法

-help コマンド ライン オプションを使用します。

cpptestcli.exe -help

プロキシ経由で C/C++test を操作する方法

デスクトップで Visual Studio とともに C/C++test を使用する場合、プロキシ サーバー経由で接続するには、<INSTALL_DIR>/plugins/com.parasoft.xtest.common.vstudio にある parasoft.properties でプロトコル固有のシステム プロパティを設定する必要があります。

たとえば、HTTPS プロトコルを使用する場合、HTTPS 用のシステム プロパティが設定されていることを確認します。最低でも、https.proxySet=truehttps.proxyHost=[hostname]https.proxyPort=[port number] を設定する必要があります。プロキシ サーバーが認証を要求する場合、https.proxyUser および https.proxyPassword プロパティを使用して認証情報を設定できます。

コマンドは次のようになります。

https.proxySet=true
https.proxyHost=myserver.example.com
https.proxyPort=3128
https.proxyUser=username
https.proxyPassword=password

また、https.nonProxyHosts プロパティを使用すると、プロキシ経由で接続する必要がないホストを指定できます。

デスクトップで Eclipse とともに C/C++test を使用する場合、Eclipse で指定されたプロキシ設定が自動的に検出され、使用されます。追加の設定を行う必要はありません。

システム プロキシ設定の使用を有効化するには、-D コマンド ライン オプションを使用して java.net.useSystemProxies=true を設定します。
プロキシ サーバーが認証を要求する場合、parasoft.https.systemProxyUser=[username] および parasoft.https.systemProxyPassword=[password, Parasoft によって暗号化可能] プロパティを使用して認証情報を設定できます。ユーザーおよびパスワードは、プロトコルごとに個別に指定します。 

コマンドは次のようになります。

java -Djava.net.useSystemProxies=true 
-Dparasoft.https.systemProxyUser=user
-Dparasoft.https.systemProxyPassword=password

注意: java.net.useSystemProxies プロパティを使用してシステム プロキシ設定が有効化されている場合、その設定が IDE 設定をオーバーライドします。

インストール

レジストリ キーの接頭辞を指定して C/C++test を Visual Studio と統合している場合に失敗したインストールを修正する方法

長い接頭辞を指定すると、Windows のパスの長さの制限によりインストールが失敗する場合があります。C/C++test が正常にインストールされるようにするには、インストール中に短い接頭辞を指定します。

マシン ID が変わってしまうのを防ぐ方法

ネットワーク環境が変わると、マシン ID の計算に使用されるインターフェイスが変わり、結果としてマシン ID が一定でなくなる可能性があります。PARASOFT_SUPPORT_NET_INTERFACES 環境変数を使用すると、安定したインターフェイスを指定し、マシン ID が変化するのを防ぐことができます。

  1. PARASOFT_SUPPORT_NET_INTERFACES 環境変数を作成します。
  2. 変数に安定した Ethernet ネットワーク インスタンスを指定します。仮想インターフェイス、一時インターフェイス、ループバック インターフェイスは使用しないでください。
    - Windows の場合: ネットワーク カードの MAC アドレスを指定します。ipconfig -all コマンドを実行すると、アドレスを取得できます。  例:

    SET PARASOFT_SUPPORT_NET_INTERFACES=00-10-D9-27-AC-85

    - Linux の場合: "inet" または "inet6" ファミリーのいずれかのネットワーク インターフェイスを指定します。ifconfig コマンドを実行すると、利用可能なインターフェイスのリストを取得できます。例: 

    export PARASOFT_SUPPORT_NET_INTERFACES=eth1

問題が解決しない場合、PARASOFT_DEBUG_NET_INTERFACES 環境変数を作成して true を指定すると、診断情報を取得できます。テクニカル サポートに送信可能なチェック手順や、マシン ID の計算に使用されているインターフェイスが標準出力に表示されます。マシン ID の計算に使用されているインターフェイスには [SELECTED] という接頭辞が付きます。

テストおよび解析

C/C++test が静的解析時にタイムアウトをレポートする場合

解析が完了するよう、以下のいずれかを行ってください。

  • 次のオプションを設定してタイムアウト上限値を増やします。
    cpptest.analyzer.source.timeout=<TIMEOUT_IN_SECONDS>
    設定の構成」を参照してください。
  • テスト コンフィギュレーションで時間がかかるルールまたはメトリクスを無効化します。コンソールに表示されるタイムアウト メッセージおよびレポートには、時間に関する情報が含まれています。
  • Parasoft 製品サポートに問い合わせます。

ソース管理システムとテスト入力でファイルの名前が違っているためにファイルをテストできない場合

ファイルを適切に処理し、解析するには、 C/C++test がテスト スコープのファイル名 (プロジェクト内のファイル名) とソース管理システムのファイル名を照合できなければなりません。そのため、Git などの大文字と小文字を区別するソース管理システムを使用している場合は、ファイル名の大文字/小文字も同一であることを確認する必要があります。

静的カバレッジ データ収集時に 1 つまたはそれ以上のファイルが見つからなかった場合

静的カバレッジ データ収集時に見つからないファイルを指摘するセットアップの問題は、ファイルのローカル パスがビルド時のパスと異なっていることを示唆します。

回避策として、CPPTEST_COVERAGE_SRC_ROOT 環境変数を使用して元のパスをローカル パスにマッピングできます。

CPPTEST_COVERAGE_SRC_ROOT=original/path1=local/path1;original/path2=local/path2;...

元のパスの中で '*' をワイルドカードとして使用できます。例:

CPPTEST_COVERAGE_SRC_ROOT=/*/path=/local/path

リスト ファイル (*.lst) でパス マッピングのリストを指定し、ファイルの場所を値として設定することもできます。例:

CPPTEST_COVERAGE_SRC_ROOT=/path/mapping.lst

*.lstファイルの各アイテムが個別のエントリとして扱われます。

Bazel ビルドで C/C++test を使用時にメモリが割り当てられない場合

リンク プロセスでマップ可能なページが枯渇する場合があります。すると、マシンに十分な RAM の余裕があるにもかかわらず、メモリが割り当てられないという現象が発生します。この問題を修正するには、プロセスごとのマッピング ページの最大数を増やします。デフォルト値は 65530 です。値を 10 倍に増やせば、問題が解決されるはずです。それには、次のコマンドを実行します。 

sysctl -w vm.max_map_count=655300

問題が解決されない場合、さらに値を増やす必要がある可能性があります。

OpenMP インストラクションを含む関数に対して C/C++test のコード インストゥルメンテーションを無効化する方法

cpptestcc コマンド ラインに次のオプションを追加します。

-xharness-option="—-ignore-functions-with-openmp=true"

'#pragma loop' ディレクティブがある関数の C/C++test コード インストゥルメンテーションを無効化する方法

cpptestcc コマンド ラインに次のオプションを追加します。

-xharness-option="—-ignore-functions-with-clang-loop=true"

'#pragma GCC ivdep' ディレクティブがある関数の C/C++test コード インストゥルメンテーションを無効化する方法

cpptestcc コマンド ラインに次のオプションを追加します。

-xharness-option="—-ignore-functions-with-ivdep=true"

レポート

C/C++test レポートで一部の文字が正しく表示されない場合

Parasoft 製品によって生成されたレポートを使用するには、環境に sans-serif フォントがある必要があります。国別文字などの一部の文字がレポートで正しく表示されない場合は、システムに sans-serif フォントがインストールされていることを確認してください。

IDE での操作

起動時に Visual Studio 2017、2019 または 2022 の速度を Parasoft Plugin またはそのコンポーネントが低下させているという通知を受け取る理由

Visual Studio 2017、2019 および 2022 には新しくパフォーマンス管理オプションが導入され、起動時間に影響を与える可能性がある拡張機能をモニターし、管理できるようになりました。結果として、Parasoft Plugin がインストールされていると、Visual Studio の起動時間が長くなったことを示すポップアップ警告が表示される場合があります。ポップアップ ウィンドウで [Manage performance] リンクをクリックして起動時間を確認し、警告の表示を無効にすることができます。

Visual Studio 2017 のソリューション エクスプローラーのコンテキスト メニューに一部の Parasoft オプションが表示されない場合

ソリューション エクスプローラーのコンテキスト メニューにすべての Parasoft オプションを表示するには、Visual Studio 2017 に以下のいずれかのワークロードがインストールされていることを確認してください。

  • Desktop development with C++
  • Universal Windows Platform development または .NET desktop development
  1. Visual Studio のインストーラーを実行します。
  2. ウィザードに従って適切なワークロードを選択します。

Parasoft dotTEST と Parasoft C/C++test を同じ Visual Studio にインストールする方法

Parasoft dotTEST および Parasoft C/C++test に付属のインストーラーを実行して Parasoft Plugin をインストールすると、同じ Visual Studio で両方の製品を使用してコードを解析することができます。

  1. どちらかの製品の <INSTALL_DIR>\integration\vstudio に移動し、 Parasoft Plugin インストーラーを実行してウィザードの指示に従います。そうすると、Parasof Plugin がインストールされ、製品のコード解析エンジンが有効化されます。
  2. もう一方の製品の <INSTALL_DIR>\integration\vstudio ディレクトリに移動し、Parasoft Plugin インストーラーを実行します。Parasoft Plugin がすでにインストールされているので、再インストール/削除ウィザードが開きます。[再インストール] を選択してウィザードを続行します。そうすると、もういっぽうの製品のコード解析エンジンが有効化されます。

詳細については「Plugin for Visual Studio」を参照してください。

コンフィギュレーションを編集しようとしたときテスト コンフィギュレーション エディターが開かない場合

この問題は次の理由により発生します。 

  • テスト コンフィギュレーション エディターは、別の Web サーバー プロセスで処理されるため、マシンにインストールされたファイアウォールが厳格な場合、プロセスがブロックされる場合があります。その場合、プロセスの実行を求めるプロンプトが表示されたら実行を許可してください。
  • Ubuntu Linux で Snap ベースのブラウザーをデフォルトのシステム ブラウザーとして使用している場合 (これは Ubuntu 21.10 以降のデフォルトの設定です)、Eclipse IDE がブラウザーで TCE を開くことができない場合があります (https://github.com/eclipse-platform/eclipse.platform.swt/issues/221 を参照)。
    回避策として、Eclipse の [Preferences] > [General] > [Web Browser] > [External web browsers] で、特定の外部ブラウザーを使用するよう設定します。 
    • 使用したいブラウザーがすでにリストされている場合、それを選択して設定を確認します。 
    • 使用したいブラウザーがリストされていない場合、[New...] ボタンをクリックしてブラウザーを追加します。たとえば、典型的な環境で Firefox を使用するには、次のように設定します。

Name: Firefox (env)
Location: /usr/bin/env
Parameters: firefox %URL%

別の回避策として、使用したいブラウザーの非 Snap 版をインストールし、システムのデフォルトのブラウザーとして設定します。

Ubuntu Linux で HTML ブラウザーが起動しないために HTML コンテンツ (C/C++test のルール ドキュメントやレポートなど) を参照できない場合

Ubuntu Linux で Snap ベースのブラウザーをデフォルトのシステム ブラウザーとして使用している場合 (これは Ubuntu 21.10 以降のデフォルトの設定です)、Eclipse IDE がブラウザーで TCE を開くことができない場合があります (https://github.com/eclipse-platform/eclipse.platform.swt/issues/221 を参照)。

回避策として、https://github.com/eclipse-platform/eclipse.platform.swt/issues/221 で、特定の外部ブラウザーを使用するよう設定します。 

  • 使用したいブラウザーがすでにリストされている場合、それを選択して設定を確認します。 
  • 使用したいブラウザーがリストされていない場合、[New...] ボタンをクリックしてブラウザーを追加します。たとえば、典型的な環境で Firefox を使用するには、次のように設定します。

Name: Firefox (env)
Location: /usr/bin/env
Parameters: firefox %URL%

別の回避策として、使用したいブラウザーの非 Snap 版をインストールし、システムのデフォルトのブラウザーとして設定します。


  • No labels