Post

[Book - JUnit IN ACTION 3판] 11. Gradle 6로 실행하는 JUnit 테스트

Gradle은 아파치 Ant와 아파치 Maven에 녹아 있는 개념에서 시작된 오픈 소스 빌드 자동화 도구다.

Maven은 프로젝트 설정 파일은 XML로 작성한다.
Gradle은 프로젝트 설정 파일을 Groovy를 기반으로 한 DSL(domain specific language, 도메인 특화 언어)로 작성한다.

DSL은 특정한 애플리케이션 도메인에서 사용하는 프로그래밍 언어를 말한다.
DSL의 핵심 아이디어는 특정 도메인에서 발생하는 문제를 해결하는 것이 주된 목표인 언어를 사용하자는 것이다.

참고로 Groovy는 JVM에서 실행될 수 있고 자바 언어와 호화 가능한 객체 지향 프로그래밍 언어다.

gradle.build 파일에 의존성을 추가할 때 dependencies 블록에 작성하게 된다.
즉 dependencies 블록에 현재 프로젝트에서 사용할 외부 의존성 구성을 선언한다.
dependencies 블록에서의 표준적인 의존성 구성의 종류와 의미를 알아보자.

  • implementation
    • 소스 코드를 컴파일할 때 필요한 의존성
  • runtime
    • 런타임에 필요한 의존성
  • testImplementation
    • 테스트 코드를 컴파일할 때 필요한 의존성
  • testRuntime
    • 테스트를 런타임에 실행하기 위한 의존성
  • runtimeOnly
    • 컴파일 타임이 아닌 런타임에만 필요한 의존성
  • testRuntimeOnly
    • 테스트 컴파일 타임이 아니라 테스트 런타임에만 필요한 의존성

Gradle에 대한 챕터는 책으로 읽고 넘어간다.
(나는 Maven의 XML 보다 상대적으로 자바에 가까운 Gradle의 DSL을 사용하고 싶다.)

This post is licensed under CC BY 4.0 by the author.

© Yn3. Some rights reserved.