Codecov Gradle Example
- Add Jacoco Plugin to your
build.gradle. See here - Set Jacoco to export xml. See here
- Execute your tests as normal
- Call
gradle jacocoTestReportto generate report. See here - Call
bash <(curl -s https://codecov.io/bash)to upload reports to Codecov. See here
- Public project? Using TravisCI, CircleCI or AppVeyor? You're all set! No upload token required.
- Otherwise please include your repository upload token. See here
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 "${buildDir}/reports/jacoco/report.xml" html.enabled false csv.enabled false } } codeCoverageReport.dependsOn { subprojects*.test }Update 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)No need to have anything else report-related in child modules
We are happy to help if you have any questions. Please contact email our Support at support@codecov.io