BackEnd/JUnit
JUnit 5. 테스트 순서
hanseom
2022. 2. 3. 18:15
반응형
테스트 인스턴스를 테스트마다 새롭게 생성하기 때문에 테스트 메소드들의 실행 순서는 보장되지 않습니다. 경우에 따라 특정 순서대로 테스트를 실행하고 싶을 때가 존재합니다. 그런 경우 @TestInstance(Lifecycle.PER_CLASS)와 함께 @TestMethodOrder를 사용할 수 있습니다.
OrderAnnotation은 낮은 값일수록 높은 우선순위를 갖습니다.
package com.java.JUnit5;
import org.junit.jupiter.api.*;
@TestInstance(TestInstance.Lifecycle.PER_CLASS)
@TestMethodOrder(MethodOrderer.OrderAnnotation.class)
public class OrderTests {
int value = 1;
@Order(3)
@Test
void printThree() {
System.out.println(value++); // [결과]: 3
}
@Order(2)
@Test
void printTwo() {
System.out.println(value++); // [결과]: 2
}
@Order(1)
@Test
void printOne() {
System.out.println(value++); // [결과]: 1
}
}
반응형