Junit4 vs Junit5

dhfl0710·2022년 7월 2일
0

TEST

목록 보기
1/3
post-thumbnail

Junit을 활용하여 단위테스트를 작성하는 책을 보고 공부하는 중인데, 책에서 Junit4 사용하여 예시를 들어서 설명하고 있길래

이참에 4와 5의 차이에 대한 정리를 하면 좋겠다싶어 , 작성하게 되었다.

JUnit?

  • 단위 테스트를 지원하는 테스팅 프레임워크
  • 정확히 말하면 java언어를 지원하는 프레임워크가 Junit이고, 이런 테스팅 프레임워크를 통칭하여 xUnit이라고 함.

지원하는 Java Version

JUnit4 -> Java5이상
JUnit5 -> Java8이상

구성

JUnit4

  • All in One

JUnit5

  • JUnit Platfrom
  • JUnit Jupiter
  • JUnit Vintage

변경 어노테이션

JUtin5 문법 살펴보기

@BeforeEach

  • 테스트 클래스의 각 메서드들이 실행되기 전마다 실행된다.
  • JUnit4에서는 @Before

@AfterEach

  • 테스트 클래스의 각 메서드들이 실행된 후마다 실행된다.
  • JUnit4에서 @After

@BeforeAll

  • 테스트 클래스의 모든 메서드가 실행되기 전에 실행.
  • Junit4에서는 @BeforeClass

@AfterAll

  • 테스트 클래스의 모든 메서드가 실행된 후에 실행.
  • Junit4에서는 @AfterClss

@ExtendWith

  • 확장을 선언적으로 등록하는데 사용.
  • Extendtion 뒤에 인자로 확장할 Extension을 추가하여 사용합니다.
    Spring을 사용할 경우 @ExtendWith(SpringExtension.class)와 같이 사용합니다.

@Disabled

  • 테스트 클래스 또는 테스트 메서드를 비활성화 하는데 사용.

@ParameterizedTest

  • 메서드가 매개변수가 있는 테스트임을 나타낸다.

@RepeatedTest

  • 메서드가 반복 테스트를 위한 테스트 템플릿임을 나타낸다.

@TestFactory

  • 메서드가 동적 테스트를 위한 테스트 팩토리임을 나타낸다.

@TestMethodOrder

  • 테스트 메서드 실행 순서를 구성하는데 사용된다.

@DisplayName

  • 테스트 클래스 또는 테스트 메서드에 대한 사용자 지정 표시
    이름을 정해줄 때 사용된다.

@Tag

  • 테스트에 태그르 지정하고 필터링하는데 사용한다.
  • 실행할 테스트를 선택적으로 실행할 수 있게 된다.
  • JUnit에서는 @Category

참고 :
https://velog.io/@minky/Junit5-%EC%82%AC%EC%9A%A9%ED%95%98%EA%B8%B0
https://hirlawldo.tistory.com/39
https://jade314.tistory.com/entry/Junit-5

profile
성실하게

0개의 댓글