inflearn logo
강의

강의

N
챌린지

챌린지

멘토링

멘토링

N
클립

클립

로드맵

로드맵

지식공유

스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB 접근 기술

fail()이 무엇인가요

해결된 질문

329

Bell Vise

작성한 질문수 17

0

회원 서비스에 대한 테스트코드 중 일부인데

try {
memberService.join(member2);
fail();
} catch (IllegalStateException e) {
assertThat(e.getMessage()).isEqualTo("이미 존재하는 회원입니다.");
}

 

여기서 fail()에 대한 제대로된 설명이 없이 넘어가셨는데 fail()이 무엇인가요?

java spring mvc spring-boot

답변 2

1

OMG

안녕하세요. Bell Vise님, 공식 서포터즈 OMG입니다.

fail()은 호출 시 강제로 해당 테스트가 실패하며, 강의에서 진행한 케이스와 같이 fail()을 호출하는 시점까지 진입하는지의 여부를 (테스트의 성공/실패 결과 기반으로) 확인할 때 사용합니다.

 

fail() 호출 시 테스트

image

 

추가로 밑에 주석에 설명을 남겨놓았는데요,

중복회원 시 예외가 발생하는 로직인 것은 강의 앞에서 설명하여 이해하고 있으리라 생각합니다.

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 인턴

안녕하세요, 인프런 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