JaCoCo gradle plugin exclude
11,112
Solution 1
Try something like this:
excludes: ['**/Dao*.class']
But as I understand, this will exclude the class from jacoco but the Report that Jacoco creates will show you "0% of coverage": Gradle issue: https://issues.gradle.org/browse/GRADLE-2955
Solution 2
For newer version of gradle (6+) use this:
jacocoTestCoverageVerification {
violationRules {
rule {
includes = ['com/myapp/*']
excludes = [
'com/myapp/folderToExclude1/*',
'com/myapp/folderToExclude2/*',
]
limit {
minimum = 0.85
}
}
}
}
Author by
user1226868
Updated on June 14, 2022Comments
-
user1226868 almost 2 years
I want to exclude some clasess from JaCoCo but the exclude doest seem to work.
For example i want to exclude all Java clasess that end with Dao (for example com.company.EmplyeeDao).
I have tried the following code, but it still shows up when i push this to sonar / use JacocoTestReport.
test { jacoco { append = true destinationFile = file("$buildDir/jacoco/jacocoTest.exec") classDumpFile = file("$buildDir/jacoco/classpathdumps") excludes = ['*Dao'] } }
I'm using this in combination with Android. What is going on?
-
Juan Saravia over 9 yearsAs I understand, yes. In the gradle issue one person excludes a yahoo and google libraries.
-
mikhail about 9 yearsWon't this exclude classes that START with the word Dao? The question was for classes that END with Dao. Should the filter be '**/*Dao.class' ?
-
Juan Saravia about 9 yearsthat's true what you said but there is no Dao.class file to exclude, the classes are like DaoProfile.class, DaoManager.class, etc. So that's why I'm using Dao*.class.