当包含Android仪器测试时,如何运行JacoTestReport?
我的Android应用程序包含单元测试和工具测试,我想使用JaCoCo插件生成一个覆盖率报告(然后最终移植到)。但我似乎无法在本地机器上运行当包含Android仪器测试时,如何运行JacoTestReport?,android,android-gradle-plugin,reporting,jacoco,Android,Android Gradle Plugin,Reporting,Jacoco,我的Android应用程序包含单元测试和工具测试,我想使用JaCoCo插件生成一个覆盖率报告(然后最终移植到)。但我似乎无法在本地机器上运行gradlew JacoTestReport,因为我没有连接到Android Studio的模拟器或设备。错误和完整日志记录在 下面是我的应用程序build.gradle中包含任务定义的部分: # ... task jacocoTestReport(type: JacocoReport, dependsOn: ['testDebugUnitTest', 'c
gradlew JacoTestReport
,因为我没有连接到Android Studio的模拟器或设备。错误和完整日志记录在
下面是我的应用程序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'
}
# ...
我正在Android项目中使用org.jacoco:org.jacoco.core:0.8.2
插件
那么,如何运行
gradlew JacoTestReport
并在本地生成报告呢?这是一个适合我的解决方案: