2011-10-25 13 views
0

私はAndroidプロジェクトがあり、AntとEMMAを使用してテストカバレッジレポートを正しく生成しています(https://wiki.jenkins-ci.org/display/JENKINS/Building+an+Android+app+and+test+projectAndroidでAntを使用してEMMAによって生成されたテストカバレッジレポートのファイルをフィルタリングする方法

私が知りたいことはです。EMMAによって生成されたレポートに表示されるファイルをどのようにフィルタリングできますか(例えば、R生成クラス、既にテスト済みのライブラリのファイル...)。

私は自分のbuild.xmlファイルに$ {sdk.dir} /tools/ant/test_rules.xmlと$ {sdk.dir} /tools/ant/main_rules.xmlの両方を含めています。 「-emma-楽器」のターゲットは、そのように見て:

<target name="-emma-instrument" depends="compile"> 
    <echo>Instrumenting classes from ${out.absolute.dir}/classes...</echo> 
    <!-- It only instruments class files, not any external libs --> 
    <emma enabled="true"> 
     <instr verbosity="${verbosity}" 
       mode="overwrite" 
       instrpath="${out.absolute.dir}/classes" 
       outdir="${out.absolute.dir}/classes"> 

       <filter excludes="*R*" /> 
     </instr> 
     <!-- TODO: exclusion filters on R*.class and allowing custom exclusion from 
      user defined file --> 
    </emma> 
</target> 

は、私もここでhttp://emma.sourceforge.net/reference_single/reference.html#instrset.filtersを指定EMMA・カバレッジ・フィルタの別のバリエーションを適用しようとしましたが、それはどちらか動作しません。また、Rは、ファイルがまだに表示され、生成しましたカバレッジレポート。

誰もがこれを解決する方法を知っていますか?

答えて

1

更新:フィルタリングはAndroid SDKのリビジョンr18として組み込まれています。リンクされた質問に対する私の答えを見てください。

another questionこれは、あなたがすでに道のりの途中にいたところです。あなたの問題を解決するには、はテストプロジェクトのビルドファイルではなく、対象プロジェクトの1つであるを修正することを確認してください。私は本当にどのような種類のant magicがAndroidのappビルドファイルに含まれているのか分かりませんが、もちろんいくつかのターゲットプロジェクトのビルドファイルを拡張することは重要な役割を果たす必要があります。対象プロジェクト内のカバレッジ変更。

この問題を解決するには、私は午前中に忙しかったので、他の開発者にとっては価値があることを願っています。

この機能は、SDKツールのbuilt-in as of revision 16である必要があります。

+0

あなたの答えをありがとう。テストbuild.xmlにフィルタを設定しました。 – Grimmace

関連する問題