티스토리 뷰
반응형
JUnit5 소개
JUnit5 란
- 자바 개발자가 가장 많이 사용하는 테스팅 프레임 워크다.
- JUnit Platform에 의해서 Test를 실행해주고, TestEngine API의 구현체인 Jupiter를 활용하여 Test 소스를 작성할 수 있다.
JUnit 5의 기본 애노테이션
- @Test
- 테스트를 진행하고자 하는 메소드를 구현할 때 사용한다.
- @BeforeAll
- @Test를 모두 실행하기 전에 딱 한번만 호출 되는 것이다.
- @AftereAll
- @Test를 모두 실행한 후에 딱 한번만 호출 되는것이다.
- @BeforeEach
- @Test를 모두 실행할 때 각각의 @Test가 실행되기 전에 호출되는 것이다.
- @AfterEach
- @Test를 모두 실행할 때 각각의 @Test가 실행된 후에 호출되는 것이다.
- @Disabled
- 테스트를 진행하지 않은 @Test가 있을 시 해당 애노테이션을 붙이면 테스트를 진행하지 않을 수 있다.
- 현재 운영에 사용되어지지는 않은데 추후 사용될 수도 있으니! 지우지 않고 냅두는 상황이 매우 많다.
class StudyTest {
@Test
void create1() {
System.out.println("create1");
}
@Test
//테스트 하는 것중 테스트 하지 않은 것을 빼려고 할 때 사용
void create2() {
System.out.println("create2");
}
//@Test를 모두 실행하기 전에 딱 한 번만 실해오디는 것
//private은 안되고 default만 허용, return type이 있으면 안됨
@BeforeAll
static void beforeAll() {
System.out.println("before all");
}
//모든 Test가 실행된 후 딱 한번만 호출
//static void로 구현
@AfterAll
static void afterAll() {
System.out.println("after all");
}
//모든 테스트를 실행할 때 각각의 테스트가 실행되기 이전에 호출
@BeforeEach
void beforeEach(){
System.out.println("before each");
}
//모든 테스트를 실행할 때 각각의 테스트가 실행되기 이후에 호출
@AfterEach
void afterEach(){
System.out.println("after each");
}
}
실행 결과
Disabled 사용 시
@Test
//테스트 하는 것중 테스트 하지 않은 것을 빼려고 할 때 사용
void create2() {
System.out.println("create2");
}
실행 결과
해당 메소드는 출력이 되지 않고 아래 사진과 같이 테스트 결과 창에 해당 메소드가 Disabled 되었다는 표시가 나타난다.
JUnit5 Test 메소드를 작성할 때 주의
Test Class나 메소드를 작성할 때 접근제한자를 붙여줘야 했는데, 그럴 필요가 없어졌다. 이유는 리플렉션을 사용하기 때문이다.
리플렉션을 사용할 시 private이든 default든 접근이 가능하니깐 굳이 접근제한자를 붙일 필요가 없다라고 판단한 것이다.
반응형
'Test > JUnit' 카테고리의 다른 글
[JUnit5] 커스텀 태그 (0) | 2020.02.18 |
---|---|
[JUnit5] 태깅과 필터링 (0) | 2020.02.18 |
[JUnit5] 조건에 따라 테스트 실행하기 (0) | 2020.01.12 |
[JUnit5] Assertion (0) | 2020.01.05 |
[JUnit5] 테스트 이름 표기하기 (0) | 2020.01.05 |
댓글
공지사항
최근에 올라온 글
최근에 달린 댓글
- Total
- Today
- Yesterday
링크
TAG
- 빈 순환 참조
- 연관관계
- 복사 팩토리
- ifPresent
- Effective Java
- java8
- java
- 김영한
- JPA
- springboot
- 빌더 패턴
- 자바8
- @Lazy
- try catch finally
- 점층적 생성 패턴
- try with resources
- Spring
- effectivejava
- 스프링부트
- 정적팩터리메서드
- mustache
- flatMap
- junit
- 인프런
- 이펙티브 자바
- 팩토리 메소드 패턴
- package-private
- 생성자
- jdk버전
- 이펙티브자바
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | ||||||
2 | 3 | 4 | 5 | 6 | 7 | 8 |
9 | 10 | 11 | 12 | 13 | 14 | 15 |
16 | 17 | 18 | 19 | 20 | 21 | 22 |
23 | 24 | 25 | 26 | 27 | 28 |
글 보관함