From 2690f69eff91581c0f4f71e94409837c0aac6285 Mon Sep 17 00:00:00 2001 From: Ches Martin Date: Fri, 15 May 2020 15:21:27 +0700 Subject: [PATCH] Add Java code coverage reporting with JaCoCo --- .dockerignore | 1 + .github/workflows/unit-tests.yaml | 6 ++- Makefile | 3 ++ core/pom.xml | 6 ++- docs/coverage/java/pom.xml | 87 +++++++++++++++++++++++++++++++ ingestion/pom.xml | 5 ++ pom.xml | 17 +++++- sdk/java/pom.xml | 8 +-- serving/pom.xml | 7 ++- 9 files changed, 128 insertions(+), 12 deletions(-) create mode 100644 docs/coverage/java/pom.xml diff --git a/.dockerignore b/.dockerignore index e9401f0cc9e..0e3b22687d0 100644 --- a/.dockerignore +++ b/.dockerignore @@ -1,2 +1,3 @@ docs +!docs/coverage charts diff --git a/.github/workflows/unit-tests.yaml b/.github/workflows/unit-tests.yaml index 6e44b9ed600..4395827e92d 100644 --- a/.github/workflows/unit-tests.yaml +++ b/.github/workflows/unit-tests.yaml @@ -16,7 +16,11 @@ jobs: restore-keys: | ${{ runner.os }}-maven- - name: test java - run: make test-java + run: make test-java-with-coverage + - uses: actions/upload-artifact@v2 + with: + name: java-coverage-report + path: ${{ github.workspace }}/docs/coverage/java/target/site/jacoco-aggregate/ unit-test-python: runs-on: ubuntu-latest diff --git a/Makefile b/Makefile index 9b23a3780a2..28d295f1778 100644 --- a/Makefile +++ b/Makefile @@ -46,6 +46,9 @@ lint-java: test-java: mvn test +test-java-with-coverage: + mvn test jacoco:report-aggregate + build-java: mvn clean verify diff --git a/core/pom.xml b/core/pom.xml index fdee512db55..e43e901d2e9 100644 --- a/core/pom.xml +++ b/core/pom.xml @@ -32,6 +32,11 @@ + + org.jacoco + jacoco-maven-plugin + + org.springframework.boot spring-boot-maven-plugin @@ -187,7 +192,6 @@ org.mockito mockito-core - 2.23.0 test diff --git a/docs/coverage/java/pom.xml b/docs/coverage/java/pom.xml new file mode 100644 index 00000000000..3cc17d88425 --- /dev/null +++ b/docs/coverage/java/pom.xml @@ -0,0 +1,87 @@ + + + + 4.0.0 + + + + + dev.feast + feast-parent + ${revision} + ../../.. + + + Feast Coverage Java + feast-coverage + + + true + + + + + dev.feast + feast-ingestion + ${project.version} + + + + dev.feast + feast-core + ${project.version} + + + + dev.feast + feast-serving + ${project.version} + + + + dev.feast + feast-sdk + ${project.version} + + + + + + + org.jacoco + jacoco-maven-plugin + + + report-aggregate + prepare-package + + report-aggregate + + + + + + + + diff --git a/ingestion/pom.xml b/ingestion/pom.xml index ccc8ca04510..d29a1f49fe1 100644 --- a/ingestion/pom.xml +++ b/ingestion/pom.xml @@ -82,6 +82,11 @@ + + + org.jacoco + jacoco-maven-plugin + diff --git a/pom.xml b/pom.xml index fb50e531d7f..44929b14603 100644 --- a/pom.xml +++ b/pom.xml @@ -33,6 +33,7 @@ core serving sdk/java + docs/coverage/java @@ -459,9 +460,9 @@ org.apache.maven.plugins maven-surefire-plugin - 2.22.1 + 3.0.0-M4 - -Xms2048m -Xmx2048m -Djdk.net.URLClassPath.disableClassPathURLCheck=true + @{argLine} -Xms2048m -Xmx2048m -Djdk.net.URLClassPath.disableClassPathURLCheck=true IntegrationTest @@ -583,6 +584,18 @@ false + + org.jacoco + jacoco-maven-plugin + 0.8.5 + + + + prepare-agent + + + + org.springframework.boot spring-boot-maven-plugin diff --git a/sdk/java/pom.xml b/sdk/java/pom.xml index e8a82a485fc..75d82edcc01 100644 --- a/sdk/java/pom.xml +++ b/sdk/java/pom.xml @@ -94,12 +94,8 @@ - maven-surefire-plugin - 2.22.2 - - - maven-failsafe-plugin - 2.22.2 + org.jacoco + jacoco-maven-plugin diff --git a/serving/pom.xml b/serving/pom.xml index 4cc02dc4510..b13a4ad07b7 100644 --- a/serving/pom.xml +++ b/serving/pom.xml @@ -40,6 +40,11 @@ + + org.jacoco + jacoco-maven-plugin + + org.springframework.boot spring-boot-maven-plugin @@ -234,11 +239,9 @@ test - org.mockito mockito-core - 2.23.0 test