2016-05-24 33 views
2

AndroidスタジオプロジェクトのGradleタスクを使用してJacocoレポートを作成しようとしています。私はいくつかのテストされていないファイルをレポートから除外したいが、それでもウェブレポートには表示されている。(Android - Gradle)いくつかのクラスファイルを除外しないJacocoカバレッジ

apply plugin: 'jacoco' 

jacoco { 
    // Use this version for upper ones are broken (with Gradle) 
    // https://github.com/jacoco/jacoco/issues/288 
    toolVersion = "0.7.1.201405082137" 
} 

def coverageSourceDirs = [ 
     'src/main/java/....', 
] 

task createJacocoReport(type: JacocoReport) { 
    println ":${project.name}:Generating Jacoco reports" 
    group = "Reporting" 
    description = "Generate Jacoco coverage reports after running tests." 
    reports { 
     xml.enabled = true 
     xml.destination = "${buildDir}/jacocoReport.xml" 
     csv.enabled = true 
     csv.destination = "${buildDir}/jacocoReport.csv" 
     html.enabled = true 
     html.destination = "${buildDir}/jacocoHtml" 
    } 
    classDirectories = fileTree(dir: './build/intermediates/classes/release', 
      excludes: ['**/R$*.class', 
         '**/R.class', 
         '**/android/**/*.class', 
         '**/google/**/*.class', 
         '**/Activities/*.class', 
         '**/Fragments/*.class', 
         '**/Views/*.class', 
         '**/NativeImplementations/*.class', 
         '**/BuildConfig.class', 
         '**/CameraDefaultConfig.class']) 

    sourceDirectories = files(coverageSourceDirs) 
    executionData = files("./build/jacoco/testReleaseUnitTest.exec") 
} 

をそして私は、このタスクを起動します:

これは私が定義したGradleのタスクです

check.finalizedBy(createJacocoReport) 

誰もが何が起こっているのかについての考えを持っていますか?私はGradle Plugin 2.1.0でAndroid Studio 2.1.1を使用しています。

ありがとうございます!

答えて

1

私は除外リストをインクルードリストに置き換えてこの問題を解決しました。私はこれの原因が何であるかを理解していませんが、誰かが考えを持っていれば...

+0

あなたのリストはどのように見えますか?それでもdirプロパティを使用していますか?ありがとう – sttaq

+0

私はその理由は、 '除外'に何かを置くことは、それが0%のカバレッジを持つものとして扱い、それがあなたの総パーセンテージを投げ捨てていたと考えています。 – Thunderforge

関連する問題