Spring Boot

JUnit과 Mockito를 사용한 단위 테스트

JUnit 5, 목을 위한 Mockito, 어서션, @Mock, @InjectMocks, 테스트 더블을 사용한 단위 테스트

30 면접 질문·
Mid-Level
1

JUnit 5 Jupiter는 무엇입니까?

답변

JUnit 5 Jupiter는 JUnit 4를 대체하는 최신 테스트 엔진으로, 현대화된 어노테이션과 새로운 기능을 갖춘 개선된 API를 제공합니다. Jupiter는 더 풍부한 어설션, 매개변수화된 테스트에 대한 향상된 지원, 그리고 프레임워크를 쉽게 확장할 수 있는 모듈형 아키텍처를 제공합니다. Jupiter를 사용하면 어설션의 lambda와 같은 Java 8 이상의 기능을 활용할 수 있습니다.

2

JUnit 5에서 메서드를 테스트로 표시하는 어노테이션은 무엇입니까?

답변

JUnit 5의 @Test 어노테이션은 runner에 의해 실행될 테스트 케이스로 메서드를 식별합니다. @Test가 expected나 timeout 같은 매개변수를 받던 JUnit 4와 달리, JUnit 5는 assertThrows 같은 전용 어설션을 사용합니다. 각 @Test 메서드는 독립적이어야 하며 특정 동작을 격리된 상태에서 테스트해야 합니다.

3

@BeforeEach와 @BeforeAll의 차이점은 무엇입니까?

답변

@BeforeEach는 깨끗한 상태를 초기화하기 위해 각 테스트 메서드 전에 실행되고, @BeforeAll은 클래스의 모든 테스트 전에 한 번만 실행됩니다. @BeforeEach는 각 테스트마다 새로운 mock이나 객체를 생성해 격리를 보장하는 데 이상적입니다. @BeforeAll은 static 메서드를 필요로 하며, 모든 테스트에서 공유되는 비용이 큰 초기화에 사용됩니다.

4

두 값의 동등성을 검증하는 어설션은 무엇입니까?

5

JUnit 5에서 예외가 발생하는지 어떻게 검증합니까?

+27 면접 질문

다음 면접을 위해 Spring Boot을 마스터하세요

모든 질문, flashcards, 기술 테스트, 코드 리뷰 연습, 면접 시뮬레이터에 접근하세요.

무료로 시작하기