본문 바로가기

공부/JUnit57

JUnit 5 테스트 반복하기 1부 RepeatedTest을 사용하여 테스트를 반복할 수 있습니다. value는 반복 횟수이며 name에서 반복 테스트 이름을 설정할 수 있고, - {displayName} - {currentRepetition} - {totalRepetitions} RepetitionInfo 타입의 인자를 받을 수 있습니다. @ParameterizedTest 테스트에 여러 다른 매개변수를 대입해가며 반복 실행합니다. - {displayName} - {index} - {arguments} - {0}, {1}, ... 참고강의 https://www.inflearn.com/course/the-java-application-test/dashboard 더 자바, 애플리케이션을 테스트하는 다양한 방법 - 인프런 | 강의 자바 프로그래.. 2022. 7. 2.
JUnit 5 커스텀 태그 import org.junit.jupiter.api.Tag; import org.junit.jupiter.api.Test; import java.lang.annotation.ElementType; import java.lang.annotation.Retention; import java.lang.annotation.RetentionPolicy; import java.lang.annotation.Target; // 이 어노테이션을 메서드에 사용할 수 있다. @Target(ElementType.METHOD) // 이 어노테이션을 런타임까지 유지를 해야 한다. @Retention(RetentionPolicy.RUNTIME) @Test @Tag("fast") // 쥬피터에서 제공하는 어노테이션 // FastTe.. 2022. 7. 2.
JUnit 5 태깅과 필터링 @Tag를 이용하여 테스트코드를 선택적으로 실행 가능하도록 설정이 가능하다. 위와 같이 Tag에 이름을 설정 한 뒤, 인텔리제이의 우측 상단에 Edit Configurations를 누른다. 기본적으로 Class로 실행이 되고 있기 때문에 Tag으로 수정하고, 테스트할 테그의 이름을 작성하면 된다. 선택적으로 실행이 잘된다. 2022. 7. 2.
JUnit 5 조건에 따라 테스트 실행하기 어노테이션과 assumingThat을 이용하여, 개발 환경의 조건에 따라서 테스트를 실행할 수 있습니다. 1. 특정한 조건을 만족하는 경우에 테스트를 실행하는 방법. org.junit.jupter.api.Assumptions. 쥬피터에서 제공하는 assumeTrue(조건), assumingThat(조건, 테스트)를 이dyd 2. Enabled와 Disabled @OnOs : WINDOW, MAX, LINUX... @OnJre : JAVA의 버전 @EnvironmentVariable: 환경변수 2022. 7. 2.
JUnit 5 테스트 이름 표시와 실행 단축키 @DisplayNameGeneration Method와 Class 레퍼런스를 사용해서 테스트 이름을 표기하는 방법 설정. 기본 구현체로 ReplaceUnderscores 제공 -> 언더바를 빈 공백으로 바꿔준다. @DisplayName 어떤 테스트인지 테스트 이름을 보다 쉽게 표현할 수 있는 방법을 제공하는 애노테이션. @DisplayNameGeneration 보다 우선 순위가 높다. -> 주로 이 어노테이션을 이용한다. @DisplayNameGeneration(DisplayNameGenerator.ReplaceUnderscores.class) class StudyTest { @Test @DisplayName("스터디 만들기") void create_new_study() { Study study = ne.. 2022. 7. 1.
JUnit5 테스트 클래스 만들기 테스트하고자 하는 클래스를 선택하고 컨트롤 + 쉬프트 + " T " 를 눌러서, JUnit5 테스트 클래스를 만든다. @Test 테스트를 할 메서드이다. JUnit 5부터는 public을 안붙여도 작동이 된다. 예시 ) @Test void create() { Study study = new Study(); assertNotNull(study); } @BeforeAll / @AfterAll BeforeAll : 테스트 클래스 안에 있는 여러 테스트가 모든 테스트를 실행하기 직전에 반드시 딱 한번만 호출이 된다. 조건) 1. 반드시 Static 메소드를 사용해야 함 2. default은 사용이 가능하다. 3. private은 사용할 수 없다. 4. return 타입은 사용할 수 없다. AfterAll : B.. 2022. 7. 1.