AsertJ란?
java test를 위해 좀 더 풍부한 문법을 제공하고 메서드 체이닝을 통해 직관적인 테스트 흐름을 작성할 수 있도록 개발된 오픈소스 라이브러리이다.
최근 junit에 필수로 사용되고 있는 추세이다.
시작하기
라이브러리 의존성 설정
Maven
1 | <dependency> |
Gradle
1 | testCompile("org.assertj:assertj-core:3.11.1") |
또는 Java 7 프로젝트의 경우 버전 2.9.11
testCompile("org.assertj:assertj-core:2.9.1")
AssertJ 메소드 임포트
1 | import static org.assertj.core.api.Assertions.*; |
실제 사용
1 | assertThat(objectUnderTest). // code completion -> assertions specific to objectUnderTest |
모든 테스트 코드는 assertThat() 메소드에서 시작한다.
###문자열 테스트1
2
3
4
5
6
7
8assertThat("Hello, world! Nice to meet you.") // 주어진 "Hello, world! Nice to meet you."라는 문자열은
.isNotEmpty() // 비어있지 않고
.contains("Nice") // "Nice"를 포함하고
.contains("world") // "world"도 포함하고
.doesNotContain("ZZZ") // "ZZZ"는 포함하지 않으며
.startsWith("Hell") // "Hell"로 시작하고
.endsWith("u.") // "u."로 끝나며
.isEqualTo("Hello, world! Nice to meet you."); // "Hello, world! Nice to meet you."과 일치합니다.
숫자 테스트
1 | assertThat(3.14d) // 주어진 3.14라는 숫자는 |