728x90
Junit5 에서는 예외테스트를 진행할 때 try - catch 보다 해당 메소드를 많이 사용하는 것 같다.
가독성이 좋아서 그런것 같기도하다.
아주 간단한 예제이지만, 혼자 구글링하면서 적용했다는 것에 칭찬하며, 혹시 다음에 까먹을까봐 기록해둔다.
JPA 실전 강의에서 나온 entity 서비스이다.
재고가 0 밑으로 떨어지면 NotEnoughStockException 예외를 발생시키면서, "need more stock" 이라는 메세지를 보낸다.
assertThatThrownBy 의 문법은 람다를 사용한다.
assertThatThrownBy(() -> item.removeStock(11) )
.isInstanceOf(NotEnoughStockException.class)
.hasMessage("need more stock");
}
() -> 테스트 원하는 코드 작성
.isInstanceof -> 발생하는예외타입
.hasMessage -> 예외발생시 발생하는 메시지
hasMessage 를 내가 정한 메시지가 아니면 아래와 같은 에러가 발생한다.
assertThatThrownBy(() -> item.removeStock(11) )
.isInstanceOf(NotEnoughStockException.class)
.hasMessage("need more stock11");
}
728x90
'Spring > Spring-detail' 카테고리의 다른 글
ResponseEntity<T> (0) | 2022.08.31 |
---|---|
assertThrows 예외 테스트 (0) | 2022.08.21 |
테스트 케이스 설정 방법 - Memory DB 사용하기 (0) | 2022.08.17 |
@Profile 활용하기 (0) | 2022.07.21 |
@JsonIgnore 와 @JsonIgnoreProperties (0) | 2022.07.08 |
댓글