Мое приложение для Android содержит тесты Unit и Instrumental, и я хотел бы создать отчет о покрытии с помощью плагина JaCoCo (а затем, наконец, портировать на coveralls.io ).Но я не могу запустить gradlew jacocoTestReport
на своей локальной машине, потому что у меня нет эмулятора или устройства, которое подключается к Android Studio.Журнал ошибок и завершений находится на https://pastebin.com/c7vcwseF.
Вот часть build.gradle
моего приложения, которая содержит определение задачи:
# ...
task jacocoTestReport(type: JacocoReport, dependsOn: ['testDebugUnitTest', 'createDebugCoverageReport']) {
reports {
xml.enabled = true
html.enabled = true
}
def fileFilter = ['**/R.class', '**/R$*.class', '**/BuildConfig.*', '**/Manifest*.*', '**/*Test*.*', 'android/**/*.*']
def debugTree = fileTree(dir: "$project.buildDir/intermediates/classes/debug", excludes: fileFilter)
def mainSrc = "$project.projectDir/src/main/java"
sourceDirectories = files([mainSrc])
classDirectories = files([debugTree])
executionData = fileTree(dir: project.buildDir, includes: [
'jacoco/testDebugUnitTest.exec', 'outputs/code-coverage/connected/*coverage.ec'
])
}
coveralls {
jacocoReportPath 'build/reports/jacoco/jacocoTestReport/jacocoTestReport.xml'
}
# ...
Я использую org.jacoco:org.jacoco.core:0.8.2
плагин в моем проекте Android.
Так как же запустить gradlew jacocoTestReport
и сгенерировать отчет локально?