私はParasoft C/C++テストを静的テストの "コーディング標準"を制御するために使用しようとしています。 Parasoftのユーザーガイドの "Makefileプロジェクトでbdfを作成する方法"しか見つかりませんでした。Parasoftでビルドデータファイル(bdf)を作成するには?
プロジェクトごとにbdfを作成するにはどうすればよいですか? makefileプロジェクトを必須としていますか?
私はParasoft C/C++テストを静的テストの "コーディング標準"を制御するために使用しようとしています。 Parasoftのユーザーガイドの "Makefileプロジェクトでbdfを作成する方法"しか見つかりませんでした。Parasoftでビルドデータファイル(bdf)を作成するには?
プロジェクトごとにbdfを作成するにはどうすればよいですか? makefileプロジェクトを必須としていますか?
parasoftは評判の高いトピックではありません。 回答は金の価値があります。私はcpptesttraceを見つけることができませんでした。 cpptestとcpptestscanがあります。彼らはできますか?私はparasoftの古いバージョンを使用しています。
あなたは正しいです。 'cpptesttrace'はParasoft C++テストバージョン9.4(2012年中頃)に追加されているので、バージョン9.2以前を使用している可能性があります。この場合、 'cpptestscan'のみが存在します。
ところで、ここではC++のテストスタンドアロンのインストール(ないのVisual Studioプラグイン)内部のプログラムを簡単に説明がある:
を、コマンドラインを構築するために、すべてのコンパイルコマンドを捕捉し、BDFに保存cpptestscanとcpptesttraceの主な違いは、ということです。これは、cpptestscanが単一のコンパイルのみをキャプチャし、一度に1つをBDFに保存できることを意味します。これは、典型的には、make CCまたはCXX変数を上書きすることによって行われた(例えば、 "cpptestscan g ++ -c foo.c -o foo.o"のようなコンパイラを指定する)。
makefileやビルドスクリプトがコマンドラインでコンパイラを上書きできるほど柔軟であれば、cpptestscanは問題ありませんでした。
make CXX="cpptestscan g++" CC="cpptestscan gcc"
通常、メイクベースのプロジェクトでは可能です。カスタムビルドスクリプトまたは自動生成ビルドスクリプトでは、すべてのベットがオフになっています。しばしば、唯一の選択肢は、人々が通常気にするプロジェクト構築スクリプトを変更することでした。 このような場合、cpptesttraceは完全に非侵入型であり、ほぼすべてのビルドプロセスからビルド情報を取得できるため、役に立ちます。あなたは複数のプロジェクトがある場合
、この記事の元の質問に戻って:cpptestscanを使用して
私は役に立つと思います。 BTW:C++テストをアップグレードできるかどうかParasoftに確認してください。
メイクファイルの使用は必須ではありません。 Parasoft C++テストには、「cpptesttrace」というツールがあり、ビルドプロセスを監視し、コンパイラの呼び出しを収集してBDFファイルを作成します。
cpptesttraceは、make、シェルスクリプト、またはIDEでのビルド(任意のビルドプロセスで使用できます(コマンドラインビルドが利用できない場合は最後の手段です)。あなたは単に「cpptesttrace」と、おそらくカップルのオプションを使用して、元のビルドコマンドラインの前に付ける必要がある
'make clean all')を使用して、ビルドに属するすべてのソースに関する情報とコンパイル方法を確認してください。
例1は、パラソフトのサポートに連絡することができます:
私はメイクファイルの例を:)与えるが、それはsconsの、ジャム、またはPythonスクリプトかもしれません、または.BAT: 想定し、私のフルビルドが次のように行われます:0:
make clean all
私はcpptesttraceを使用して、次のようにビルドを実行することができますcpptesttrace make clean all これはビルド全体を監視し、実行からBDFファイルを作成します。
例2:
ビルドスクリプトとマルチレベル・プロセスであるか、道に沿ってフォルダを変更させる場合は、BDFのための絶対的な場所をcpptesttrace伝えるために良いかもしれません。上記の例を拡張し、我々は実行することができます:BDFパスは、ソースツリーのレベルcpptesttraceが呼び出されるに関係なく絶対的であることを確認します
cpptesttrace --cpptesttraceOutputFile=`pwd`/cpptest.bdf make clean all
を。
あなたの答えをありがとう、parasoftは評判の高いトピックではありません。答えは金の価値がある。私はcpptesttraceを見つけることができませんでした。 cpptestとcpptestscanがあります。彼らはできますか?私はparasoftの古いバージョンを使用しています。 – Alperen
ありがとうございました。これらの説明は私を啓発した。 – Alperen
私はParasoftを使うプロジェクトが2つあります。あなたの答えは両方のためにとても役に立ちます。 1つは完全に動作しますが、もう1つは問題があります。まだ失敗し、一部のファイルで解析エラーが発生します。私はそれらのファイルを調べたところ、共通のヘッダーがすべて含まれていることがわかりましたが、Parasoft IDEでは「未解決のインクルード」エラーが表示されます。このプロジェクトは、独自のIDEで適切に構築されます。そして、このビルドプロセスで作成されたbdfファイルを使用しました。この共通のヘッダーファイルはインクルードディレクトリにあるため、ビルドプロセスは独自のIDEで正常に動作します。なぜそれは働かないのですか? – Alperen
また、関連するインクルードディレクトリがbdfファイルに表示されています。また、このヘッダーファイルにはCファイルがありません。単純な定義で構成されているからです。その名前が "asd.h"であるとすると、bdfファイルには "asd.o"という単語はありません。 – Alperen