LifeCycle.PER_CLASS 모드 혹은 MethodOrdered를 사용하는 테스트 클래스를 제외하고 테스트 트리의 모든 노드에 적용된다. 위 두 가지의 경우에는 테스트 클래스 @Execution(CONCURRENT) 어노테이션이 테스트 클래스 혹은 메서드에 있는 경우에만 병렬 실행 된다.
클래스 병렬 수행, 클래스 내 메서드 동일 스레드 수행 옵션
테스트 클래스를 병렬적으로 실행하지만 클래스마다 메서드를 같은 스레드안에서 실행하려면 다음과 같이 설정하면된다.
테스트 클래스 순차 실행, 클래스 내 메서드 병렬 실행
병렬 수행 전략
ParallelExecutionConfigurationStrategy을 이용하여 원하는 병렬 처리 및 최대 풀 크기와 같은 속성을 지정하여 구성할 수 있으며, 병렬성 전략에는 dynamic, fixed, custom 세가지가 있다.
dynamic
junit.jupiter.execution.paralle.config.dynamic.factor 설정 파라미터에 설정된 값과 사용 가능한 프로세서와 코어 수를 곱하여 병렬 처리를 계산한다.
fixed
junit.jupiter.execution.parallel.config.fixed.parallelism 에 설정한 값으로 병렬 처리
4로 설정했으면, 총 4개의 테스트가 동시에 수행된다.
custom
junit.jupiter.execution.parallel.config.custom.class 설정 파라미터를 통해 ParallelExecutionConfigurationStrategy를 커스텀하여 원하는 설정을 지정한다.