JUnit 5 확장 모델

The Java JUnit 5 확장 모델

백기선님의 강의인 The Java 애플리케이션을 테스트하는 다양한 방법을 듣고 공부한 내용을 정리한 글

JUnit 5 확장 모델이란?

JUnit 4의 확장 모델은 @RunWith(Runner), TestRule, MethodRule

Junit 5의 확장 모델은 단 하나, Extension

확장팩 등록 방법

  • 선언적 등록 @ExtendWith

  • 프로그래밍 등록 @RegisterExtension

  • 자동 등록 자바 ServiceLoader

@ExtendWith

확장에 사용할 클래스를 정의하고 ExtendWith의 매개변수에 넣어주면 확장이 가능하다.

@RegisterExtension

@ExtendWith 방법의 단점은 인스턴스를 커스터마이징이 불가능하다는 단점이 있다.

해당 인스턴스를 생성할 때 Default 생성자로 생성하는데 만약 생성자를 사용하여 값을 넣어주도록 하려면 어떻게 해야할까?

이를 위해 Field에 인스턴스를 생성하고 @RegisterExtension 애노테이션을 붙여줌으로써 커스터마이징이 가능하다.

Reference

백기선님 인프런 강의 더 자바, 애플리케이션을 테스트하는 다양한 방법



© 2022. by minkuk

Powered by minkuk