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 を使用する。


参照