Repolode
testcontainers

testcontainers/testcontainers-java

JUnit 테스트에서 데이터베이스, Selenium 브라우저 및 기타 서비스를 위한 일회용 Docker 컨테이너를 실행하는 Java 라이브러리입니다.

스타
8,759
포크
1,950
열린 이슈
638
마지막 커밋
4일 전

어떤 프로젝트인가요?

Testcontainers를 사용하면 Java 테스트에서 mock 대신 실제 인프라를 대상으로 테스트할 수 있습니다. 테스트가 시작되면 데이터베이스, Selenium 웹 브라우저 또는 컨테이너에서 실행할 수 있는 다른 서비스용 경량 일회용 Docker 컨테이너가 실행되고, 테스트가 끝나면 컨테이너가 제거됩니다.

JUnit과 연동되므로 컨테이너의 수명 주기가 테스트 클래스와 메서드에 맞춰집니다. 또한 자주 사용하는 데이터베이스와 서비스를 위한 사전 구성 모듈을 제공하며, Docker에서 실행할 수 있는 이미지라면 같은 방식으로 사용할 수 있습니다.

이 라이브러리를 사용하려면 정상적으로 작동하는 Docker 환경이 필요하며, 문서는 java.testcontainers.org에서 확인할 수 있습니다.

핵심 기능

  • 01테스트용 일회용 Docker 컨테이너를 시작하고 테스트가 끝나면 제거합니다.
  • 02JUnit 테스트 수명 주기와 연동됩니다.
  • 03자주 사용하는 데이터베이스와 Selenium 브라우저를 위한 바로 사용할 수 있는 지원을 제공합니다.
  • 04Docker 컨테이너에서 실행할 수 있는 모든 서비스와 함께 사용할 수 있습니다.

활용 사례

  • 인메모리 대체재 대신 실제 데이터베이스를 대상으로 통합 테스트를 실행합니다.
  • 컨테이너 환경에서 Selenium으로 브라우저 기반 UI 흐름을 테스트합니다.
  • Java 서비스의 테스트 스위트에 필요한 메시지 브로커나 기타 의존 서비스를 실행합니다.

빠른 시작

  1. 1

    설정 방법은 문서를 참고하세요

사용 전 알아둘 점

  • 테스트를 실행하려면 Docker(또는 호환되는 컨테이너 런타임)가 실행 중인 환경이 필요합니다.

포함된 컬렉션

토픽

자주 묻는 질문

testcontainers-java은(는) 무엇인가요?
JUnit 테스트에서 데이터베이스, Selenium 브라우저 및 기타 서비스를 위한 일회용 Docker 컨테이너를 실행하는 Java 라이브러리입니다. Testcontainers를 사용하면 Java 테스트에서 mock 대신 실제 인프라를 대상으로 테스트할 수 있습니다. 테스트가 시작되면 데이터베이스, Selenium 웹 브라우저 또는 컨테이너에서 실행할 수 있는 다른 서비스용 경량 일회용 Docker 컨테이너가 실행되고, 테스트가 끝나면 컨테이너가 제거됩니다.
testcontainers-java은(는) 무료로 사용할 수 있나요? 라이선스는 무엇인가요?
testcontainers-java은(는) MIT 라이선스의 오픈소스입니다. 상업용 제품에 사용하기 전에 라이선스 조건을 확인하세요.
testcontainers-java은(는) 아직 유지보수되고 있나요?
활발히 유지보수 중. testcontainers-java의 마지막 커밋은 2026년 11월 2일입니다.
testcontainers-java은(는) 어디에 사용할 수 있나요?
인메모리 대체재 대신 실제 데이터베이스를 대상으로 통합 테스트를 실행합니다. 컨테이너 환경에서 Selenium으로 브라우저 기반 UI 흐름을 테스트합니다. Java 서비스의 테스트 스위트에 필요한 메시지 브로커나 기타 의존 서비스를 실행합니다.
testcontainers-java는 어떻게 설치하나요?
설정 방법은 문서를 참고하세요
testcontainers-java은(는) 어디서 받을 수 있나요?
소스 코드와 설치 방법은 GitHub에 있습니다: https://github.com/testcontainers/testcontainers-java

요약은 프로젝트 README를 바탕으로 AI가 작성했습니다. GitHub 통계는 매일 갱신됩니다.

관련 프로젝트