suyeoniii
수바리의 코딩일기
suyeoniii
전체 방문자
오늘
어제
  • 분류 전체보기
    • 🪓 삽질일기
    • 🔙 Backend
      • 🟢 Node.js
      • 🐈‍⬛ NestJS
      • 🌿 Springboot
      • 🗄️ Database
    • 🌸 Frontend
      • 🌐 React.js
      • 💚 Vue.js
      • 🤖 Android
    • 🕹️ 알고리즘
      • 💯 코딩테스트
    • 🔠 프로그래밍 언어
      • 💛 Javascript
      • 💙 Typescript
    • 🚀 배포
    • 🐱 Git
    • etc.
      • 개발환경
      • 오픈 API
      • 개념정리
      • 커뮤니티
    • AI
      • 생성형 AI
    • 회고

블로그 메뉴

  • 홈
  • 태그
  • 방명록

공지사항

인기 글

태그

  • ubuntu
  • vue
  • MySQL
  • C++
  • 백준
  • springboot
  • Spring Boot
  • html
  • ec2
  • java
  • 회고
  • android
  • MAC
  • Git
  • node.js
  • AWS
  • 알고리즘
  • nodejs
  • javascript
  • node

최근 댓글

최근 글

티스토리

hELLO · Designed By 정상우.
suyeoniii

수바리의 코딩일기

[JUnit5][SpringBoot][Kotlin] Exception테스트하기 (assertThrows)
🔙 Backend/🌿 Springboot

[JUnit5][SpringBoot][Kotlin] Exception테스트하기 (assertThrows)

2022. 12. 10. 23:22
반응형

 

JUnit4

Junit4에서 exception 테스트는 @Test(expected=기대하는예외)를 통해 가능하다.

(JUnit5와 비교하기 위한 예시코드이므로 정확하진 않을 수 있음)

@Test(expected = NotEnoughStockException::class)
fun 상품주문_재고수량초과() {
  val member = createMember("사용자")
  val book = createBook("도서명", 10000, 10, "저자명", "12345")
  val orderCount = 11
  
  orderService.order(member.id!!, book.id!!, orderCount)
  
  fail("예외가 발생해야 한다.");
}

 

JUnit5

@Test에 expected를 쓸 수 없게 되어있어 다른 방법으로 exception을 테스트 해야한다.

@Test
fun 상품주문_재고수량초과() {
  val member = createMember("사용자")
  val book = createBook("도서명", 10000, 10, "저자명", "12345")
  val orderCount = 11
	
  assertThrows(NotEnoughStockException::class.java) { orderService.order(member.id!!, book.id!!, orderCount) }
}

@Test(expected=) 대신 assertThrow를 사용해 기대하는 exception을 적어주고, 중괄호 안에 exception이 발생하는 코드를 적어주면 된다.

 

전체코드

 

GitHub - suyeoniii/springboot-jpa-practice

Contribute to suyeoniii/springboot-jpa-practice development by creating an account on GitHub.

github.com

 

반응형
저작자표시 (새창열림)

'🔙 Backend > 🌿 Springboot' 카테고리의 다른 글

[Spring Boot] 오류: Cannot construct instance of (no Creators, like default constructor, exist): cannot deserialize from Object value (no delegate- or property-based Creator)  (1) 2022.04.05
[JUnit] assertThat deprecated  (0) 2021.09.12
[Spring Boot] 카카오 로그인 API 구현 (2) - Access token으로 사용자 정보 가져오기  (1) 2021.08.15
[Spring Boot] 카카오 로그인 API 구현 (1) - Access token 발급받기  (3) 2021.08.15
[Springboot][EC2] 로컬에서 빌드하고 빌드파일만 업로드하기  (0) 2021.07.05
    '🔙 Backend/🌿 Springboot' 카테고리의 다른 글
    • [Spring Boot] 오류: Cannot construct instance of (no Creators, like default constructor, exist): cannot deserialize from Object value (no delegate- or property-based Creator)
    • [JUnit] assertThat deprecated
    • [Spring Boot] 카카오 로그인 API 구현 (2) - Access token으로 사용자 정보 가져오기
    • [Spring Boot] 카카오 로그인 API 구현 (1) - Access token 발급받기
    suyeoniii
    suyeoniii
    개발관련 문제 해결, 공부한 내용 등을 업로드합니다.

    티스토리툴바