fail()이 무엇인가요
회원 서비스에 대한 테스트코드 중 일부인데
try {
memberService.join(member2);
fail();
} catch (IllegalStateException e) {
assertThat(e.getMessage()).isEqualTo("이미 존재하는 회원입니다.");
}
여기서 fail()에 대한 제대로된 설명이 없이 넘어가셨는데 fail()이 무엇인가요?
답변 2
1
안녕하세요. Bell Vise님, 공식 서포터즈 OMG입니다.
fail()은 호출 시 강제로 해당 테스트가 실패하며, 강의에서 진행한 케이스와 같이 fail()을 호출하는 시점까지 진입하는지의 여부를 (테스트의 성공/실패 결과 기반으로) 확인할 때 사용합니다.
fail() 호출 시 테스트

추가로 밑에 주석에 설명을 남겨놓았는데요,
중복회원 시 예외가 발생하는 로직인 것은 강의 앞에서 설명하여 이해하고 있으리라 생각합니다.
member1을 회원가입한 후,
member2를 member1과 동일한 이름으로 가입할 시 예외가 발생하는데요.
따라서 fail()을 호출하지 않고 catch문이 실행되는 것을 보여주시기 위함으로 보시면 될 것 같습니다 😀
@Test
public void 중복_회원_예외() {
// given
Member member1 = new Member();
member1.setName("spring");
Member member2 = new Member();
member2.setName("spring");
// when
memberService.join(member1);
try {
memberService.join(member2); // -> 이 시점에 예외가 발생하여
// 아래의 fail()을 호출하지 않고
fail();
} catch (IllegalStateException e) {
// catch문이 실행
}
}감사합니다.
0
안녕하세요, 인프런 AI 인턴입니다.
질문하신 fail() 함수에 대한 설명은 “중복_회원_예외 fail()에 생기는 빨간줄!” 이라는 제목의 글에서 강의 수강생과 공식 서포터즈 간의 대화를 통해 확인하실 수 있습니다. 해당 함수의 사용 예와 기대하는 동작에 대한 상세한 설명이 포함되어 있어서 도움이 될 것입니다.
해당 내용을 확인하시려면 아래 링크를 참고해주세요.
- 중복_회원_예외 fail()에 생기는 빨간줄!
감사합니다.
..
0
74
2
Unused property.....
0
98
2
project JDK is misconfigured
0
130
2
외부 API의 ID 타입(String/UUID)과 내부 도메인의 ID 타입(Long)이 불일치할 때의 설계 정석
0
82
2
단위/통합 테스트 버전충돌 문제
0
91
2
❗️springboot 4.0.2 버전 aspectj dependency 설정❗️
0
228
1
왜 컨트롤러는 변한게 없는데 새로 만든 html 파일이 뜨나요?
0
102
2
윈도우 build test오류 질문
1
102
2
테스트 관련 공부에 대한 조언을 얻고 싶습니다
0
98
2
테스트 실행 시 에러 질문
0
290
1
name을 통한 비교와 객체를 통한 비교
0
77
1
빌드 후 libs 없음
1
128
1
윈도우 gradlew.bat 에러
0
167
1
@PostMapping("/members/new")가 동작하지 않습니다
0
88
1
java static class와 kotlin class
0
77
1
스프링 DB연결
0
126
1
소요 시간
0
85
2
ddl.sql에 빨간 밑줄
1
101
2
welcome page 에러
0
180
3
잘 모르겠습니다.
0
163
2
fail을 똑같이 쳤는데 오류가 발생해요
0
156
2
index.html Welcome page
0
121
1
프로젝트 gradle-groovy ?
0
364
1
테스트코드 메서드명 한글
0
200
2





