[DEV] J-Jay

스프링 부트 테스트 코드 (2) - AssertJ 본문

Back-end/Spring

스프링 부트 테스트 코드 (2) - AssertJ

J-Jay 2023. 9. 2. 22:35
728x90

AssertJ

AssertJ는 JUnit과 함께 사용해 검증문의 가독성을 높여주는 라이브러리이다.

이를테면 앞서 작성한 테스트 코드의 Assertion은 기대값과 실제 비교값이 명시하지 않으므로 비교 대상이 헷갈린다.

https://dev-junick.tistory.com/46

 

스프링 부트 테스트 코드 (1) - JUnit

테스트 코드 테스트 코드는 작성한 코드가 의도대로 잘 동작하고 예상치 못한 문제가 없는지 확인할 목적으로 작성하는 코드이다. 테스트 코드는 test 디렉터리에서 작업한다. 테스트 코드에도

dev-junick.tistory.com

기댓값과 비교값이 잘 구분되지 않는 예시

Assertions.assertEquals(a + b, sum);

큰문제가 아니라고 생각할 수 있지만 대규모 프로젝트에서는 조금 더 명확한 모습의 코드가 실수를 줄일 수 있어 이런 가독성은 꽤 중요한 문제이다. 하지만 이럴 때 AssertJ를 사용하면 가독성이 더 좋아진다.

 

가독성이 좋은 AssertJ 예시

assertThat(a + b).isEqaulTo(sum);

위의 코드의 경우 a와 b를 더한 값이 sum과 같아야 한다는 의미로 명확하게 읽히기에 가독성이 좋다고 할 수있다.

AsserJ에는 값이 같은지 비교하는 isEqaulTo(), isNotEqualTo() 외에도 다양한 메서드를 제공한다.

자주 사용하는 메서드는 아래와 같다.

메서드 설명
isEqualTo(A) A 값과 같은지 검증
isNotEqualTo(A) A 값과 다른지 검증
contains(A) A 값을 포함하는지 검증
doesNotContain(A) A 값을 포함하지 않는지 검증
startsWith(A) 접두사가 A인지 검증
endsWith(A) 접미사가 A인지 검증
isEmpty() 비어있는 값인지 검증
isNotEmpty() 비어있지 않은 값인지 검증
isPositive() 양수인지 검증
isNegative() 음수인지 검증
isGreaterThan(1) 1보다 큰 값인지 검증
isLessThan(1) 1보다 작은 값인지 검증

'Back-end > Spring' 카테고리의 다른 글

스프링 부트 ORM (1)  (0) 2023.09.03
스프링 부트 테스트 코드 (3)  (0) 2023.09.02
스프링 부트 테스트 코드 (1) - JUnit  (0) 2023.09.02
스프링 부트 계층 파악하기  (0) 2023.09.02
스프링 부트 구조  (1) 2023.09.02