상식닷컴
로그인
가입하기
2026년 상식닷컴 선정 식당 & 카페 리스트
2025년 2026년 신상 호텔 리스트
최근에 오픈한 호텔을 찾는다면 살펴보세요
일주일 식단표 어플
자동 일주일 식단표 어플
안드로이드
아이폰
주식 & 코인 차트의 신
1000만원으로 2000만원 만들기 프로젝트
수정하기 - JUnit에서 NullPointerException을 테스트하는 방법은?
닉네임
비밀번호
제목
내용
[이미지 업로드는 권한이 있는 사람만 가능. 하단 카톡으로 연락]
<a href='https://sangseek.com/sangseeks/JUnit/ko'>JUnit</a>에서 NullPointerException이 발생하는 상황을 테스트하려면, 테스트 메서드 내에서 해당 예외가 발생하는지를 검증해야 합니다. JUnit 버전에 따라 약간씩 방법이 다를 수 있지만, 대표적으로 JUnit 4와 JUnit 5에서의 방법을 소개합니다. --- 1. JUnit 4에서 `NullPointerException` 테스트하기 방법 1: `@Test` 애노테이션의 `expected` 속성 사용 JUnit 4에서는 `@Test` 애노테이션에 `expected` 속성을 지정해서 특정 예외가 발생하는지 쉽게 테스트할 수 있습니다. ```java @Test(expected = NullPointerException.class) public void testNullPointerException() { Object obj = null; obj.toString(); // NullPointerException 발생 } ``` 설명: - 이 테스트는 `NullPointerException`이 발생할 때만 통과합니다. - 예외가 발생하지 않거나 다른 예외가 발생하면 실패합니다. 방법 2: `try-catch` 문 사용하기 더 세밀한 검증이 필요하면 `try-catch`를 직접 사용해서 예외 메시지 등도 확인할 수 있습니다. ```java @Test public void testNullPointerExceptionWithMessage() { try { Object obj = null; obj.toString(); fail("Expected NullPointerException to be thrown"); } catch (NullPointerException e) { assertEquals("some expected message", e.getMessage()); } } ``` 설명: - `fail()` 메서드는 예외가 발생하지 않았을 때 테스트가 실패하도록 합니다. - 예외가 던져지면 메시지나 상태를 추가로 확인할 수 있습니다. --- 2. JUnit 5에서 `NullPointerException` 테스트하기 JUnit 5에서는 `Assertions.assertThrows()` 메서드를 활용하는 것이 일반적입니다. ```java import static org.junit.jupiter.api.Assertions.assertThrows; @Test public void testNullPointerException() { assertThrows(NullPointerException.class, () -> { Object obj = null; obj.toString(); }); } ``` 설명: - `assertThrows`는 <a href='https://sangseek.com/sangseeks/람다 표현식/ko'>람다 표현식</a> 내에서 지정한 예외가 발생하는지를 검사합니다. - 예외가 발생하지 않으면 테스트 실패. - 추가로 `assertThrows`는 발생한 예외 객체를 반환하므로, 메시지 확인 등 후속 검증도 가능합니다. ```java @Test public void testNullPointerExceptionMessage() { NullPointerException thrown = assertThrows(NullPointerException.class, () -> { Object obj = null; obj.toString(); }); assertEquals(null, thrown.getMessage()); // 실제 메시지 확인 } ``` --- 요약 - JUnit 4 : `@Test(expected = NullPointerException.class)`가 가장 간단하며, 필요 시 `try-catch`로 예외 메시지 검증 가능. - JUnit 5 : `assertThrows(NullPointerException.class, () -> { ... })`를 주로 사용하며, 예외 메시지 등 상세 검증 가능. 이 방법들을 통해 테스트 코드에서 `NullPointerException`이 의도한 대로 발생하는지를 정확히 확인할 수 있습니다.
이용안내
커뮤니티 이용안내
×
- 게시한 게시글로 발생하는 문제는 게시자에게 책임이 있습니다.
- 게시글이 타인/타업체의 저작권을 침해할 경우 모든 책임은 게시자에게 있습니다. 게시자가 모든 손해를 부담해야 합니다.
- 상식닷컴 운영자는 게시자와 상의하지 않고 게시글을 수정 또는 삭제할 수 있습니다.
- 상식닷컴 운영자는 깨끗한 커뮤니티 공간을 만드는 것이 1순위입니다.
수정하기
취소하기