Advertisement
Guest User

Untitled

a guest
Mar 26th, 2019
75
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.52 KB | None | 0 0
  1. apply plugin: 'jacoco'
  2.  
  3. jacoco {
  4. toolVersion = '0.8.2'
  5. }
  6.  
  7. tasks.withType(Test) {
  8. jacoco.includeNoLocationClasses = true
  9. }
  10.  
  11. task jacocoTestReport(type: JacocoReport, dependsOn: ['testDevDebugUnitTest', 'createDevDebugCoverageReport']) {
  12.  
  13. group "Reporting"
  14. description "Generate Jacoco coverage reports."
  15.  
  16. def javaClasses = []
  17. def kotlinClasses = []
  18. def javaSrc = []
  19. def kotlinSrc = []
  20. def execution = []
  21.  
  22. def fileFilter = ['**/R.class', '**/R$*.class', '**/BuildConfig.*', '**/Manifest*.*', '**/*Test*.*', 'android/**/*.*']
  23.  
  24. rootProject.subprojects.each { proj ->
  25. javaClasses << fileTree(dir: "$proj.buildDir/intermediates/javac/devDebug", excludes: fileFilter)
  26. kotlinClasses << fileTree(dir: "$proj.buildDir/tmp/kotlin-classes/devDebug", excludes: fileFilter)
  27. javaSrc << "$proj.projectDir/src/main/java"
  28. kotlinSrc << "$proj.projectDir/src/main/kotlin"
  29. execution << fileTree(dir: proj.buildDir,
  30. includes: ['jacoco/testDevDebugUnitTest.exec',
  31. 'outputs/code-coverage/connected/**/*.ec'])
  32. }
  33.  
  34. sourceDirectories = files([javaSrc, kotlinSrc])
  35. classDirectories = files([javaClasses, kotlinClasses])
  36.  
  37. print execution
  38.  
  39. executionData = files(execution)
  40.  
  41.  
  42. reports {
  43. xml.enabled true
  44. xml.destination file("${rootProject.buildDir}/reports/jacoco/jacocoTestCoverageReport.xml")
  45. html.enabled true
  46. html.destination file("${rootProject.buildDir}/reports/jacoco/html")
  47. }
  48. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement