Sorun:
İle bir projem var Jacob ve belirli sınıfları ve / veya paketleri filtreleyebilmek istiyorum.
İlgili Belgeler:
Aşağıdaki belgeleri okudum:
Resmi Jacobsite: http://www.eclemma.org/jacoco/index.html
Resmi Jacob için dokümanlar gradle: https://gradle.org/docs/current/userguide/jacoco_plugin.html
Resmi Jacob Github
kapsam üzerinde çalışan sorunlar:
https://github.com/jacoco/jacoco/wiki/FilteringOptions
https://github.com/jacoco/jacoco/issues/14
İlgili StackOverflow Bağlantıları:
JaCoCo & Gradle - Filtreleme Seçenekleri (Yanıt yok)
Sonarrunner ve Gradle kullanarak paketleri Jacoco raporundan hariç tutun (Kullanılmıyorsonar)
JaCoCo - JSP'yi rapordan hariç tut (İşe yarıyor gibi görünüyoruzman, Ben kullanıyorum gradle)
Maven Jacoco Yapılandırması - Çalışmayan rapordan sınıfları / paketleri hariç tut ( gibi görünüyoruzman, Ben kullanıyorum gradle)
JaCoCo gradle eklentisi hariç tut (Bu işe yaramadı)
Gradle Jacoco - kapsam raporları yapılandırmada hariç tutulan sınıfları içerir (Çok yakın görünüyor, kullanılmış doFirst
, benim için çalışmadı)
Denediklerime bir örnek:
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"]
}
}
}
Soru:
Oluştururken belirli paketleri ve sınıfları nasıl dışlayabilirim Jacob kapsama raporları?
packages
kullanarak çevrimiçi olarak filtreleyebilirsiniz Codecov
? Ayrıca gördüm, destek Github
ne olacak Android
, gördüm Java
. Yine de size tüm raporları göndermem ve daha sonra filtrelemeye göre filtrelemem gerekir.
excludes
resmi belgelerinden aslında yapmak o zaman? Neredeyse yararsız mı?
excludes
kapsam görevinde değil, test görevinde. Dosyaları JaCoCo tarafından kullanılmaktan ve dolayısıyla kayıt kapsamından hariç tutar. Bunu, bazı sınıflar için kapsamı kaydetmek istemiyorsanız, başka bir enstrümantasyon ajanıyla bir çelişki nedeniyle yapamıyorsanız veya sınıfları önceden ayarladığınız için kullanabilirsiniz. Bu, bir sınıfı raporun dışında bırakmayacaktır, özellikle de bahsedilen son durumda, bu korkunç bir fikir olur.