JaCoCo如何/何时创建.exec文件?

时间:2018-07-07 16:16:56

标签: android jacoco

这是import org.apache.spark.mllib.linalg.SparseVector val vector = new SparseVector(891, Array(11, 20, 25, 27, 28, 50), Array( 0.35686135501086036, 8.194306936725383E-6, 7.62720047518819E-6, 9.354557510460644E-4, 5.633054601656321E-4, 2.5641516558812987E-5) ) vector.indices // res1: Array[Int] = Array(11, 20, 25, 27, 28, 50) vector.values // res2: Array[Double] = Array(0.35686135501086036, 8.194306936725383E-6, 7.62720047518819E-6, // 9.354557510460644E-4, 5.633054601656321E-4, 2.5641516558812987E-5) JaCoCo的配置,我的项目(build.gradle)包含一个app模块,在其中指定了此library配置因为JaCoCo只包含app类。

Application

但是,我不确定自第一次执行task jacocoTestReport(type: JacocoReport, dependsOn: 'testDebugUnitTest') { reports { xml.enabled = true html.enabled = true } def fileFilter = ['**/R.class', '**/R$*.class', '**/BuildConfig.*', '**/Manifest*.*', '**/*Test*.*', 'android/**/*.*'] def debugTree = fileTree(dir: "${buildDir}/intermediates/classes/debug", excludes: fileFilter) def mainSrc = "${project.projectDir}/src/main/java" sourceDirectories = files([mainSrc]) classDirectories = files([debugTree]) executionData = files("${buildDir}/jacoco/testDebugUnitTest.exec") } 以来是如何/何时创建的,就像这样:

testDebugUnitTest.exec

,由于上述命令中的./gradlew clean jacocoTestReportclean被清除了。目前,我不知道.exec的生成方式/时间,因此将其手动复制到该位置。

这是我运行此命令时在logcat中输出的内容:

  

任务:myLibrary:jacocoTestReport跳过   14:10:16.642 [DEBUG] [org.gradle.internal.progress.DefaultBuildOperationExecutor]构建操作'任务:myLibrary:jacocoTestReport'已启动   14:10:16.642 [DEBUG] [org.gradle.api.internal.tasks.execution.ExecuteAtMostOnceTaskExecuter]开始执行任务':myLibrary:jacocoTestReport'   14:10:16.642 [INFO] [org.gradle.api.internal.file.collections.DirectoryFileTree]文件或目录'/ path / code / android / myLibrary / build / jacoco',未找到

1 个答案:

答案 0 :(得分:0)

感谢this的发布,我了解到execec是在我们第一次运行jacocoTestReport任务(在build.gradle中定义)时创建的: / p>

  

现在,每次运行测试时,这些任务都会执行,并且jacoco将以特定格式为这组测试生成覆盖率报告的原始文件。您可以在构建文件夹中找到Exec(用于单元测试和ec)(用于仪器测试)。