AssertJ 소개testCompile ‘org.assertj:assertj-core:3.6.2’

멋진 테스트 코드를 작성하도록 돕는 AssertJ 라이브러리에 대해서 알아봅시다.

AssertJ의 장점

  • 메소드 체이닝을 지원하기 때문에 좀 더 깔끔하고 읽기 쉬운 테스트 코드를 작성할 수 있습니다.
  • 개발자가 테스트를 하면서 필요하다고 상상할 수 있는 거의 모든 메소드를 제공합니다.

라이브러리 의존성 설정

Java8 이상 기반 프로젝트는 3.x 버전을, Java7 이하 기반 프로젝트는 2.x 버전을 사용하셔야 합니다.

Gradle

  • Java8
  • Java7

Maven

AssertJ 메소드 임포트

다음과 같이 정적 임포트를 하면 AssertJ의 다양한 API를 클래스 이름없이 바로 사용할 수 있습니다.

테스트 대상 지정하기

모든 테스트 코드는 assertThat() 메소드에서 출발합니다.
다음과 같은 포멧으로 AssertJ에서 제공하는 다양한 메소드를 연쇄 호출 하면서 코드를 작성할 수 있습니다.

문자열 테스트

간단한 문자열 테스트 코드를 통해 AssertJ가 얼마나 강력한지 살펴봅시다.

7개의 메소드를 연쇄적으로 호출하여 이해하기 쉬운 테스트 코드를 작성하였습니다.
AssertJ 없이 이러한 테스트 코드를 작성했더라면 얼마나 많은 코드가 필요했었을까요? :sweat_smile:

숫자 테스트

대소 비교 뿐만 아니라, 오프셋을 이용하여 좀 더 느슨한 비교까지 가능합니다.

답글 남기기

이메일은 공개되지 않습니다. 필수 입력창은 * 로 표시되어 있습니다.