Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- apply plugin: 'jacoco'
- dependencies {
- implementation 'com.android.support.constraint:constraint-layout:
- testImplementation 'junit:junit:4.12'
- testImplementation 'org.hamcrest:hamcrest-all:1.3'
- testImplementation 'com.android.support.test.espresso:espresso-core:3.0.1'
- }
- android {
- defaultConfig {
- minSdkVersion 22
- testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner"
- }
- productFlavors {
- }
- buildTypes{
- debug{
- testCoverageEnabled true
- }
- }
- }
- task jacocoTestReport(type: JacocoReport, dependsOn: ['testDebugUnitTest', 'createDebugCoverageReport']) { //we use "debug" build type for test coverage (can be other)
- group = "reporting"
- description = "Generate unified Jacoco code coverage report"
- reports {
- xml.enabled = true
- html.enabled = true
- }
- def fileFilter = [
- '**/*Test*.*',
- '**/AutoValue_*.*',
- '**/*JavascriptBridge.class',
- '**/R.class',
- '**/R$*.class',
- '**/Manifest*.*',
- 'android/**/*.*',
- '**/BuildConfig.*',
- '**/*$ViewBinder*.*',
- '**/*$ViewInjector*.*',
- '**/Lambda$*.class',
- '**/Lambda.class',
- '**/*Lambda.class',
- '**/*Lambda*.class',
- '**/*$InjectAdapter.class',
- '**/*$ModuleAdapter.class',
- '**/*$ViewInjector*.class',
- '**/*_MembersInjector.class', //Dagger2 generated code
- '*/*_MembersInjector*.*', //Dagger2 generated code
- '**/*_*Factory*.*', //Dagger2 generated code
- '*/*Component*.*', //Dagger2 generated code
- '**/*Module*.*' //Dagger2 generated code
- ]
- def debugTree = fileTree(dir: "${buildDir}/intermediates/classes/debug", excludes: fileFilter) //we use "debug" build type for test coverage (can be other)
- def mainSrc = "${project.projectDir}/src/main/java"
- sourceDirectories = files([mainSrc])
- classDirectories = files([debugTree])
- executionData = fileTree(dir: "$buildDir", includes: [
- "jacoco/testDebugUnitTest.exec", //we use "debug" build type for test coverage (can be other)
- "outputs/code-coverage/connected/*coverage.ec"
- ])
- }
Add Comment
Please, Sign In to add comment