내가 공부한 Assertj
‘스프링 부트 와 AWS 로 혼자 구현하는 웹 서비스’ 라는 책으로 예제코드를 짜다가 assertThat() 메소드를 보고 저는 무조건 JUnit의 assertThat() 이라고 예상했지만 코드에 에러가 계속 나고 구글링해도 해결방법이 나오지않자 타입의 문제라고 생각이 들어서 확인해보니 Assertj 인것을 발견했습니다. 그로인해 assertJ라는 걸로 다양한 assert가 가능한걸 알게되었습니다.
AssertJ 를 사용하기 위해서는 dependency 같이 이 필요한데… 그러면 이렇게 사용이 가능한데… 그래서 어떠한 이점이 생깁니다.
@Test
public void 롬복_기능_테스트() {
String name = "test";
int amount = 1000;
HelloResponseDto dto = new HelloResponseDto(name, amount);
assertThat(dto.getName()).isEqualTo(name);
assertThat(dto.getAmount()).isEqualTo(amount);
}
AssertJ 는 테스트 검증 라이브러리의 검증 메소드입니다 검증하고싶은 대상을 메소드 인자로 받습니다. JUnit 의 Assert.assertThat 은 is()같이 라이브러리가 필요합니다 assertj는 자동완성이 더 확실하게 됩니다
하지만 지금 테스트하는 코드에서는 그냥 Junit 것을 써도 무방합니다
@Test
public void 롬복_기능_테스트() {
String name = "test";
int amount = 1000;
HelloResponseDto dto = new HelloResponseDto(name, amount);
Assert.assertEquals(dto.getName(), name);
Assert.assertEquals(dto.getAmount(), amount);
}
방법이 여러가지가 있으니 다음에 비슷한 상황이 오면 당황해하지 않는 게 좋을 것 같습니다.