github actions3 Testcontainers로 DB 통합테스트: Docker 이미지까지 자동 띄우는 실전 가이드 Testcontainers로 DB 통합테스트: Docker 이미지까지 자동 띄우는 실전 가이드로컬에서 통합테스트를 돌릴 때마다“로컬 DB 켰나?” “테스트용 스키마는?” “동료 환경은 또 왜 깨졌지?”이런 문제를 반복해서 겪어본 적이 있을 겁니다.Testcontainers는 이런 고민을 줄여주기 위해,테스트 코드 안에서 직접 Docker 컨테이너를 띄우고 내리는 방식으로테스트마다 깨끗한 DB 환경을 자동으로 만들어 주는 라이브러리입니다.이 글에서는 Spring Boot + JPA + PostgreSQL 조합을 기준으로,Testcontainers로 DB 통합테스트를 설계하고 운영하는 방법을 정리합니다. 1. 왜 DB 통합테스트에 Testcontainers를 쓰는가?전통적인 통합테스트는 보통 이렇게 진행됩니.. 2025. 10. 10. Gradle 빌드 캐시/병렬/Configuration Cache로 빌드 50% 줄이기 Gradle 빌드 캐시/병렬/Configuration Cache로 빌드 50% 줄이기빌드 시간이 길면 배포 속도도 느립니다. Gradle 캐시, 병렬 빌드, Configuration Cache 3가지만 제대로 켜도 체감 30~50%까지 줄일 수 있습니다. 이 글은 단일 프로젝트/멀티모듈 공통으로 적용 가능한 실전 설정과 주의점을 정리합니다.1) gradle.properties (로컬/CI 공통)org.gradle.jvmargs=-Xmx2g -Dfile.encoding=UTF-8org.gradle.daemon=trueorg.gradle.parallel=trueorg.gradle.caching=trueorg.gradle.configuration-cache=true# 실험적 기능/플러그인은 CC와 충돌할 수 .. 2025. 10. 8. GitHub Actions: push 시 테스트 자동화 YAML GitHub Actions: push 시 테스트 자동화 YAML작은 프로젝트라도 테스트 자동화를 걸어두면 회귀 버그를 초기에 걸러낼 수 있습니다. 아래 워크플로우는 JDK 21 기준, Gradle 캐시 최적화, PR 코멘트, 실패 즉시 취소(concurrency)까지 포함합니다.workflow 파일(.github/workflows/ci.yml)name: CIon: push: branches: [ main ] pull_request: branches: [ main ]permissions: contents: readconcurrency: group: ci-${{ github.ref }} cancel-in-progress: truejobs: test: runs-on: ubuntu-l.. 2025. 10. 4. 이전 1 다음