Kotest 글로벌 설정(Global Configuration)

일부 프로퍼티 테스트 설정은 모든 프로퍼티 테스트에 대해 전역적으로 설정할 수 있다.

일부 프로퍼티 테스트 설정은 모든 프로퍼티 테스트에 대해 전역적으로 설정할 수 있다.

기본 반복 횟수

표준 기본 반복 횟수는 1000이다. 즉, 속성 테스트에서 반복 횟수를 지정하지 않으면 기본값은 1000이 된다.

PropertyTesting.defaultIterationCount에 값을 할당하거나 시스템 속성인 kotest.proptest.default.iteration.count를 사용하여 이 기본값을 재정의할 수 있다.

반복 횟수를 직접 설정하는 모든 테스트는 당연히 해당 값을 사용한다.

예를 들어

PropertyTesting.defaultIterationCount = 123

// will use 555 iterations specified in the test
forAll<String, String>(555) { a,b -> a + b == "$a$b" }

// will use 123 iterations from the global default
forAll<String, String> { a,b -> a + b == "$a$b" }

Kotest 프레임워크를 사용하는 경우 프로젝트 구성을 사용하여 테스트 전에 이 작업을 수행할 수 있다. 예를 들어

class KotestConfig : AbstractProjectConfig() {
   override suspend fun beforeProject() {
      PropertyTesting.defaultIterationCount = 123
   }
}

축소 단계 출력

기본적으로 축소를 사용할 때 각 축소 단계는 기록되지 않고 최종 축소 값만 기록된다.

각 중간 값의 로깅을 활성화하려면 PropertyTesting.shouldPrintShrinkStepstrue를 할당하거나 시스템 속성 kotest.proptest.output.shrink-steps=true를 사용한다.


참조




최종 수정 : 2024-04-14