• 카테고리

    질문 & 답변
  • 세부 분야

    백엔드

  • 해결 여부

    해결됨

주문상품_재고수량초과 테스트 질문있습니다(fail())

24.01.25 02:06 작성 조회수 279

1

[질문 내용]
여기서 주문상품수량이 10개니 예외가 터지지않고 fail로 가는거로 알고있는데요 Expected jpabook.jpashop.exception.NotEnoughStockException to be thrown, but nothing was thrown 이러한 에러는 뜨는데 예외가 터지지않았기에 fail이 떠야하는데 fail안에 있는 메세지가 안뜹니다

한가지 더 질문이 있씁니다

주문상품수량을 11로 바꿧을떄 마지막에 fail을 적지않고 테스트를 돌렸을땐 예외를 터트려서 테스트가 성공적으로 끝나는데요 여기서 위와같이 fail메서드를 적어도 원래는 위에서 예외가 처리됏기떄문에 테스트가 정상적으로 끝나야 되는게 맞는거 아닌가요? 테스트를 돌렷는데 fail문이 뜹니다 그 뜻은 예외가 터지지않았다는 말이죠.. 의문이 듭니다 도와주세요ㅠㅠ

답변 1

답변을 작성해보세요.

2

OMG님의 프로필

OMG

2024.01.25

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

asssertThrows()에서 사용자가 예측한 예외가 발생할 경우 테스트가 성공하며, 다음 프로세스를 이어나가게 됩니다 😀

다음 링크(클릭)의 codesweaver님 답변을 참고해주세요 ^^

감사합니다.

동형님의 프로필

동형

질문자

2024.01.25

답글 감사합니다 OMG님 말씀대로 예외가 발생하고 테스트를 성공해도 fail은 무조건 실행되는 말씀이신거같은데요 그럼 영한님강의에서는 예외테스트를 성공하고 fail메서드가 실행이 안된 이유가 assertThrows와 expected 차이인걸로 알면 될까요?

OMG님의 프로필

OMG

2024.01.25

네 맞습니다.

@Text(expected)assertThrows()의 동작의 차이라고 이해하시면 될 것 같아요 😀

동형님의 프로필

동형

질문자

2024.01.25

감사합니다!