HomeAboutMeBlogGuest
© 2025 Sejin Cha. All rights reserved.
Built with Next.js, deployed on Vercel
🤩
개발
/
Java
Java
/
🏣
assertJ
🏣

assertJ

[참고] Assertj 필수 부분 정리
[ Baeldung ] Assertj Exception assertion
assertj soft assertion객체 비교usingRecursiveComparison()List에 대해서 필드 뽑아내서 비교 시(extracting)

assertj soft assertion

테스트를 위한 많은 프레임워크들 중에 AssertJ만이 특별한 기능을 제공합니다. 그것은 soft assertion라고 불리는데, 동시에 여러개의 테스트를 할 때 중간에 에러가나도 멈추지 않고, 모든 검사를 실행하고 결과를 보여줍니다.
@Test public void soft_assertion_assertj_test(){ User user = new User("Yuri", "Bushnev", "bushnevyuri@gmail.com"); SoftAssertions softly = new SoftAssertions(); softly.assertThat(user).isNotNull(); softly.assertThat(user.getName()).isEqualTo("Yuri"); softly.assertThat(user.getSurename()).isEqualTo(""); softly.assertThat(user.getEmail()).isEqualTo("bushnevyurigmail.com"); softly.assertAll(); }
 

객체 비교

usingRecursiveComparison()

  • 내부 필드들 각각 다 비교하는 것. 동일성 비교가 아닌 동등성 비교
 

List에 대해서 필드 뽑아내서 비교 시(extracting)

assertThat(expenditures) .extracting(Expenditure::getUserCategory, Expenditure::getName) .isEqualTo(List.of(tuple(null, "name1"), tuple(null, "name2"), tuple(null, "name3")));