vanniktech / gradle-android-junit-jacoco-plugin

Gradle plugin that generates JaCoCo reports from an Android Gradle Project
http://vanniktech.com
Apache License 2.0
400 stars 76 forks source link

How to configure allowed (includes) package names? #214

Open johnjohndoe opened 2 years ago

johnjohndoe commented 2 years ago

I am trying to use version 0.16.0 in my multi-module Android application project which has one Android application module, multiple Android library modules and multiple Java library modules.

When I execute the jacocoTestReportDevDebug task in Android Studio the following failure occurs:

> Task :app:testDevDebugUnitTest

MyTest > initializationError FAILED
    java.lang.IllegalStateException at ClassReloadingStrategy.java:503
        Caused by: java.lang.UnsupportedOperationException at InstrumentationImpl.java:-2
        Caused by: java.lang.UnsupportedOperationException at InstrumentationImpl.java:-2

The failure does not occur when I execute the task from the shell.

This could theoretically be fixed by defining only packages of my projects to be included as can be done with a jacoco configuration block:

tasks.withType(Test) {
    jacoco {
        includes = [
                "com.example.android.*" // Prevents IllegalStateException at ClassReloadingStrategy.java
        ]
    }
}

How can I configure such includes within the junitJacoco configuation block?

renmiantaohua123 commented 2 weeks ago

hello, Hi, have you solved this problem?