2013-03-25 367 views
7

macosxプラットフォームのカバレッジテストにgcovを使用しています。 (これは私が欲しいものである)そして、「Test.d, Test.dia, Test.gcno, Test.gcda, Test.o」 はその後、私はTest.m.gcovファイルを生成するgcov-4.2 -b Test.gcnoコマンドを使用してファイルを生成2つのgcovファイルを1つにマージする方法はありますか?

1. Build Settings ==> Generate Test Coverage Files == Yes 
2. Build Settings ==> Instrument Progaram Flow == Yes 
3. Build Phases ==> Link Binary with library ==> add "libprofile_rt.dylib" 

が、私はテストケースを実行し、次の時間:私はセットでのXcodeの設定を終えます再度、ファイル "Test.d, Test.dia, Test.gcno, Test.gcda, Test.o"が生成され、データがリセットされます。

だから私は二つの質問があります。

  1. は、私は私のプロジェクトのように多くの時間を実行し、最後にファイルを生成することができるように、私はこれらのカバレッジファイル内のデータが蓄積させるするための方法はあります。 #1は絶望的である場合
  2. 、あなたはどのように一つに(2回を実行して生成された)ファイルをmerge two Test.gcnoに私を言うことができます。事前にすべてのあなたの助けを

    gcov-4.2 -help 
    Usage: gcov [OPTION]... SOURCEFILE 
    
    Print code coverage information. 
    
        -h, --help      Print this help, then exit 
        -v, --version     Print version number, then exit 
        -a, --all-blocks    Show information for every basic block 
        -b, --branch-probabilities  Include branch probabilities in output 
        -c, --branch-counts    Given counts of branches taken 
                rather than percentages 
        -n, --no-output     Do not create an output file 
        -l, --long-file-names   Use long output file names for included 
                source files 
        -f, --function-summaries  Output summaries for each function 
        -o, --object-directory DIR|FILE Search for object files in DIR or called FILE 
        -p, --preserve-paths   Preserve all pathname components 
        -u, --unconditional-branches Show unconditional branch counts too 
    
    For bug reporting instructions, please see: 
    <URL:http://developer.apple.com/bugreporter>. 
    

おかげ

答えて

15

gcovための通常のワークフローはコンパイルとリンク

  1. されています。私は、以下のgcovのコマンドのオプションは、ターミナルでgcovのを試してみてくださいカバレッジ・サポート(-fprofile-arcs -ftest-coverage
  2. と異なる可能性パラメータ/セットで、おそらく複数回、あなたの実行可能ファイルを実行しますテンション。これには、基本的には、アプリケーションの連続実行が蓄積カバレッジの統計情報になります(.gcov)人間が読める形式でカバレッジの統計情報を取得するために.gcdaファイル
  3. 起動gcov

を累積使用情報を作成します。これらの蓄積は.gcovファイルではなく.gcdaファイルで行われるため、更新された統計情報を表示するたびにgcovを再実行する必要があります。

関連する問題