Skip to content

Latest commit

 

History

History
87 lines (69 loc) · 2.48 KB

File metadata and controls

87 lines (69 loc) · 2.48 KB

Codecov Gradle Example

FOSSA Status

Guide

Travis Setup

Add to your .travis.yml file.

language: java
jdk:
  - oraclejdk8
before_script:
  - chmod +x gradlew
script:
  - ./gradlew check
  - ./gradlew codeCoverageReport
after_success:
  - bash <(curl -s https://codecov.io/bash)

Produce Coverage Reports

  1. Add Jacoco Plugin to your build.gradle. See here
  2. Set Jacoco to export xml. See here
  3. Execute your tests as normal
  4. Call gradle jacocoTestReport to generate report. See here

FAQ

  • Q: Do you support Multi-module projects?
    A:Update your parent (root) build.gradle:
allprojects {
    apply plugin: 'java'
    apply plugin: 'maven'
    apply plugin: 'jacoco'

    sourceCompatibility = 1.8
    targetCompatibility = 1.8

    repositories {
        mavenLocal()
        mavenCentral()
        jcenter()

        maven { url "http://repo1.maven.org/maven2/" }
    }
}

subprojects {
    dependencies {
        ...
    }

    test.useTestNG()
}

task codeCoverageReport(type: JacocoReport) {
    executionData fileTree(project.rootDir.absolutePath).include("**/build/jacoco/*.exec")

    subprojects.each {
        sourceSets it.sourceSets.main
    }

    reports {
        xml.enabled true
        xml.destination file("${buildDir}/reports/jacoco/report.xml")
        html.enabled false
        csv.enabled false
    }
}

codeCoverageReport.dependsOn {
    subprojects*.test
}

Caveats

Private Repo

Repository tokens are required for (a) all private repos, (b) public repos not using Travis-CI, CircleCI or AppVeyor. Find your repository token at Codecov and provide via appending -t <your upload token> to you where you upload reports.

Links

License

FOSSA Status