Problema:
Tengo un proyecto con jacoco y quiero poder filtrar ciertas clases y / o paquetes.
Documentación relacionada:
He leído la siguiente documentación:
Oficial jacocositio: http://www.eclemma.org/jacoco/index.html
Oficial jacoco docs para gradle: https://gradle.org/docs/current/userguide/jacoco_plugin.html
Oficial jacoco Github
problemas, trabajando en la cobertura:
https://github.com/jacoco/jacoco/wiki/FilteringOptions
https://github.com/jacoco/jacoco/issues/14
Enlaces relacionados de StackOverflow:
JaCoCo & Gradle - Opciones de filtrado (Sin respuesta)
Excluir paquetes del informe de Jacoco usando Sonarrunner y Gradle (sin usarsonar)
JaCoCo: excluir JSP del informe (parece funcionar paramaven, Estoy usando gradle)
Configuración de Maven Jacoco: excluir clases / paquetes del informe que no funciona (parece funcionar paramaven, Estoy usando gradle)
Exclusión del complemento gradle de JaCoCo (No se pudo hacer que esto funcione)
Gradle Jacoco: los informes de cobertura incluyen clases excluidas en la configuración (parece muy cercano, se usó doFirst
, no funcionó para mí)
Ejemplo de lo que he probado:
apply plugin: 'java'
apply plugin: 'jacoco'
buildscript {
repositories {
mavenCentral()
jcenter()
}
}
repositories {
jcenter()
}
jacocoTestReport {
reports {
xml {
enabled true // coveralls plugin depends on xml format report
}
html {
enabled true
}
}
test {
jacoco {
destinationFile = file("$buildDir/jacoco/jacocoTest.exec")
classDumpFile = file("$buildDir/jacoco/classpathdumps")
excludes = ["projecteuler/**"] // <-- does not work
// excludes = ["projecteuler"]
}
}
}
Pregunta:
¿Cómo puedo excluir ciertos paquetes y clases al generar el jacoco informes de cobertura?
packages
Internet usando Codecov
? Además, vi el Github
, qué pasa con el Android
apoyo, vi Java
. Debería tener que enviarte todos los informes y luego filtrar después y filtrar antes.
excludes
de la documentación oficial de hecho lo hacen , entonces? ¿Es bastante inútil?
excludes
no está en la tarea de cobertura, sino en la tarea de prueba. Excluye archivos de ser instrumentados por JaCoCo y por lo tanto la cobertura se registra. Puede usar esto si no desea registrar la cobertura de algunas clases, si no puede debido a algún conflicto con otro agente de instrumentación o porque instrumentó previamente las clases. Esto no excluirá a una clase del informe, especialmente en el último caso mencionado, sería una idea horrible.