단위 테스트 (TestNG 5.10)의 기본으로 사용하는 추상 기본 클래스가 있습니다. 이 클래스에서는 테스트, 데이터베이스 매핑 설정 등을위한 전체 환경을 초기화합니다.이 추상 클래스에는 @BeforeClass
초기화를 수행 하는 주석 이있는 메서드가 있습니다.
다음으로 @Test
메서드와 메서드 가있는 특정 클래스로 해당 클래스를 확장합니다 @BeforeClass
. 이러한 메소드는 환경의 클래스 별 초기화를 수행합니다 (예 : 데이터베이스에 일부 레코드 저장).
@BeforeClass
어노테이션이있는 메소드 의 특정 순서를 적용하려면 어떻게 해야합니까? 확장 클래스의 클래스보다 먼저 실행될 추상 기본 클래스의 클래스가 필요합니다.
예:
abstract class A {
@BeforeClass
doInitialization() {...}
}
class B extends A {
@BeforeClass
doSpecificInitialization() {...}
@Test
doTests() {...}
}
예상 주문 :
A.doInitialization
B.doSpecificInitialization
B.doTests
실제 주문 :
B.doSpecificInitialization // <- crashes, as the base init is missing
(A.doInitialization // <---not executed
B.doTests) // <-/