*Exception to be thrown, but nothing was thrown
by 뚜부니회원 가입 시 중복 이메일이 존재하면 CustomException이 발생하도록 구현하고 테스트를 작성하였는데,
아래와 같이 Exception이 발생하지 않았다는 에러가 발생했습니다.
CustomException to be thrown, but nothing was thrown.
해당 이슈는 Exception을 try-catch로 감쌌거나, 테스트 하는 메소드 설정이 잘못된 경우 등 다양한 원인이 존재하며, 그에 따라 다양한 해결 방법이 있다고 합니다.
저는 Exception을 발생시키는 메서드가 아닌 다른 메서드로 테스트를 해서 발생한 이슈였습니다. 이렇게 간단한 이유였다니.. 😂😂
테스트하는 메서드를 변경해줍시다..ㅎㅎ
Before
@Test @DisplayName("이메일 중복 예외 테스트")
public void duplicateEmail() {
// given
Member member1 = Member.builder()
.email("test@email.com")
.password("password")
.name("name")
.phone("010-1234-5678")
.nickname("nickname")
.build();
memberRepository.save(member1);
Member member2 = Member.builder()
.email("test@email.com")
.password("password")
.name("name")
.phone("010-1234-5678")
.nickname("nickname")
.build();
// when
CustomException e = assertThrows(CustomException.class, () -> memberRepository.save(member2));
//then
assertThat(e).isEqualTo(new CustomException(ErrorCode.DUPLICATE_EMAIL));
}
After
@Test @DisplayName("이메일 중복 예외 테스트")
public void duplicateEmail() {
// given
Member member1 = Member.builder()
.email("testcode2@email.com")
.password("password")
.name("name")
.phone("010-1234-5678")
.nickname("nickname2")
.build();
memberRepository.save(member1);
String email = "testcode2@email.com";
String password = "password";
String name = "name";
String phone = "010-1234-5678";
String nickname = "nickname3";
SignupReq member2 = new SignupReq(email, password, name, phone, nickname);
// when
CustomException e = assertThrows(CustomException.class, () -> memberService.signup(member2));
//then
assertThat(e.getErrorCode()).isEqualTo(ErrorCode.DUPLICATE_EMAIL);
}
사소한 이슈가 발생하지 않도록 더 주의하며 테스트 코드를 작성 해야겠네요🥲🥲
참고
'Issue' 카테고리의 다른 글
[Linux] terminal capability "cm" required 해결하기 (0) | 2023.06.27 |
---|---|
[React] 개발 서버 CORS 이슈 (0) | 2023.01.23 |
javax.net.ssl.SSLHandshakeException: sun.security.validator.ValidatorException: PKIX path build (0) | 2022.05.12 |
org.apache.catalina.LifecycleException: Protocol handler start failed (0) | 2022.05.12 |
[PHPStorm / IntelliJ / WebStorm] Server Certificates 오류 (0) | 2021.07.12 |
블로그의 정보
개발하는 두부
뚜부니