• 카테고리

    질문 & 답변
  • 세부 분야

    프로그래밍 언어

  • 해결 여부

    미해결

@Order와 @Order가 없는 순서가 있는 케이스

21.10.01 01:02 작성 조회수 292

0

동영상에서는 테스트별로 @Order가 있는 경우만 설명을 하신거 같아서, 한번 궁금해서 @Order와 있는 경우와 @Order 없는 경우를 한번 테스트해봤습니다.
 
뭔가 무작위 순위로 실행되는거같기도 하고 아닌거 같은데 매번 실행하면 같은 순서로 실행이 되는거 같더라구요. (실행속도로 정렬로 해서 되는것도 아닌거 같고요.)
 
 
현재 테스트는
 
A method - @order가 없는 메소드
B method - @Order(1),
C method - @order가 없는 메소드,
 
총 3개의 메소드를 실행했고, 순서는 C,B,A 순서로 실행되었는데 왜 이렇게 실행이 되는지 궁금합니다.
 
 

답변 1

답변을 작성해보세요.

3

코드 윗부분이 안보이는데 테스트 클래스 위에 @TestMethodOrder 애노테이션 사용하셨나요?

해당 애노테이션을 쓰지 않으셨다면 @Order는 무시됐다고 생각하시면 될 것 같습니다. 

@TestMethodOrder를 OrderAnnotation.class으로 설정하고 @Order를 썼다면 @Order를 사용한 테스트를 먼저 실행하고 사용하지 않은 테스트는 랜덤하게 고정된 순서로 실행할 겁니다.