에러 발생 상황
회원 서비스 테스트 중 AssertionFailedError 에러가 발생했다.
@Test
public void 중복_회원_예외() {
// given
Member member1 = new Member();
member1.setName("spring");
Member member2 = new Member();
member1.setName("spring"); // 중복된 이름
// when
memberService.join(member1);
IllegalStateException e = assertThrows(IllegalStateException.class, () -> memberService.join(member2)); // 예외가 발생해야 한다.
assertThat(e.getMessage()).isEqualTo("이미 존재하는 회원입니다.");
// then
}
당시 작성한 코드
문제 파악
member1을 setName한 뒤 member2도 setName 해야 하는데 실수로 둘 다 member1이라고 썼다. 그래서 결론적으론 회원이 한 명만 등록된 것이기 때문에 중복으로 인한 예외가 발생하지 않아서 "Expected java.lang.IllegalStateException to be thrown, but nothing was thrown." 라는 에러 문구가 뜬 것이다.
문제 해결
Member member2 = new Member();
member2.setName("spring"); // 중복된 이름
member1.setName("spring"); 이라고 잘못 작성한 코드를 member2로 바꿔주자 에러 없이 실행됐다. 오타 잘 확인하기...
'오류 로그' 카테고리의 다른 글
인텔리제이 properties 한글 깨짐 (0) | 2022.01.21 |
---|---|
인텔리제이에서 특정 파일명의 확장자를 다르게 인식할 때 (0) | 2022.01.17 |
인텔리제이 콘솔창 한글 깨짐 (0) | 2022.01.08 |
AnnotationConfigApplicationContext@4dbb42b7 has not been refreshed yet (0) | 2022.01.01 |
인텔리제이 org.thymeleaf.exceptions.TemplateInputException (0) | 2021.12.18 |