Repository navigation
feat : 테스트 CI와 코드 헬스 PR 봇 도입 - #34
Merged
Merged
Conversation
IntegrationTestSupport에 integration 태그를 달고 test는 제외, integrationTest는 포함하도록 분리한다. FinApplicationTests처럼 이름 규칙에 맞지 않는 통합 테스트도 있어 파일명 대신 태그로 구분한다.
codeHealthReports 태스크로 단위+통합 테스트 합산 커버리지(combined.xml), PMD, CPD XML 리포트를 생성한다. PR 리포트용 정보 제공 목적이라 PMD 위반은 빌드를 실패시키지 않는다(ignoreFailures).
JaCoCo/PMD/CPD/Codelens 결과와 main 스냅샷을 비교해 PR 코멘트용 마크다운과 metrics.json을 만든다. Python 프로젝트가 없어 표준 라이브러리(unittest)만 사용한다.
- backend-ci: 단위/통합 테스트 실행 (머지 차단용) - backend-code-health: 코드 헬스 리포트를 PR 코멘트로 게시·갱신하고 main push 시 비교 기준 스냅샷을 저장 (정보 제공용, 실패해도 차단하지 않음) - CI에는 .env가 없어 application-dev.yml이 요구하는 OAuth/JWT 값을 더미로 주입한다.
Backend Code Health ReportCommit:
Attention
Warnings
|
yuyeol3
marked this pull request as ready for review
October 5, 2026 08:43
Collaborator
|
허걱 이런 기능도 추가할 수 있군요.. 감탄 나오네요.. 수고하셨습니다!! |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
변경점 👍
레포에 CI가 없어서 테스트 CI와 PR 코드 헬스 리포트 봇을 추가했습니다.
IntegrationTestSupport에@Tag("integration")을 달았습니다. 이제test는 단위 테스트만,integrationTest는 통합 테스트만 실행합니다.FinApplicationTests처럼 이름 규칙에 맞지 않는 통합 테스트가 있어서, 파일명 대신 태그로 구분했습니다.backend-ci.yml: 단위 테스트와 통합 테스트를 실행합니다. 머지 차단용입니다.backend-code-health.yml: 코드 헬스 리포트를 PR 코멘트로 제공해주는 봇입니다(정보 제공용)metrics.json을 artifact로 저장합니다. PR에서는 이 값을 기준으로 Base와 Change 열을 채웁니다.tools/code_health_report.py: 리포트 생성기입니다. 표준 라이브러리만 사용하고 unittest를 함께 추가했습니다..env가 없어서application-dev.yml이 요구하는 OAuth와 JWT 값을 더미로 주입합니다.테스트 💻
단위 테스트 및 통합 테스트
스크린샷
아래 커멘트란에서 보고서 형식을 확인하실 수 있습니다.
비고
main 비교 기준은 이 PR이 머지된 뒤 첫 main push부터 생깁니다.
이외 궁금한 점 있으시면 편하게 질문해 주세요!