diff --git a/.github/workflows/CI_dev_be_pull_request.yml b/.github/workflows/CI_dev_be_pull_request.yml index 1fbfd603d..c56e116f4 100644 --- a/.github/workflows/CI_dev_be_pull_request.yml +++ b/.github/workflows/CI_dev_be_pull_request.yml @@ -49,3 +49,16 @@ jobs: - name: yaml 파일 변경 run: | echo "${{ secrets.APPLICATION_DEFAULT_DEV }}" > ./backend/src/main/resources/application.yml + + coverage: + runs-on: self-hosted + steps: + - name: 테스트 커버리지를 PR에 코멘트로 등록합니다 + id: jacoco + uses: madrapps/jacoco-report@v1.2 + with: + title: 📝 테스트 커버리지 리포트 + paths: ${{ github.workspace }}/backend/build/reports/jacoco/test/jacocoTestReport.xml + token: ${{ secrets.GITHUB_TOKEN }} + min-coverage-overall: 50 + min-coverage-changed-files: 50 diff --git a/backend/build.gradle b/backend/build.gradle index f7e6c02e1..d7ced5b3e 100644 --- a/backend/build.gradle +++ b/backend/build.gradle @@ -2,6 +2,7 @@ plugins { id 'java' id 'org.springframework.boot' version '3.2.1' id 'io.spring.dependency-management' version '1.1.4' + id 'jacoco' } group = 'com.example' @@ -67,3 +68,20 @@ dependencies { tasks.named('test') { useJUnitPlatform() } + +test { + finalizedBy jacocoTestReport +} + +jacoco { + toolVersion = "0.8.11" // 버전 명시 +} + +jacocoTestReport { + dependsOn test + reports { + xml.required.set(true) + csv.required.set(false) + html.required.set(true) + } +}