Kotest Property Testing

Explains Property Testing.

Kotest Property-based Testing

Kotest property testing defines inputs and expected output, then generates many inputs that should satisfy the property being tested.

Kotest Property Test Functions

Kotest has two function variants used to run property tests, forAll and checkAll.

Kotest Generators

Kotest generators are tools used to support property-based testing.

Kotest Generators List

Introduces the full list of Kotlin generators.

Kotest Generator Operations

Introduces Kotest generator operations including Next, Filter, Map, FlatMap, Merging, and Bind.

Kotest Seeds

When a property test runs, values are generated using a random source created from a seed value.

Kotest Configuration

Explains Kotest property testing configuration.

Kotest Shrinking

In property-based testing, the first failure case found may contain a lot of complexity that is not actually responsible for making the test fail.

Kotest Statistics

Sometimes you may want to know what kinds of values Kotest generates to check that a generator is configured as expected.

Kotest Global Configuration

Some property test settings can be configured globally for all property tests.

Kotest Arrow Generators

Kotest provides an optional module that provides generators for Arrow.

Kotest Kotlinx DateTime Gens

Kotest provides an optional module that provides generators for KotlinX DateTime.

Kotest Extra Arbs

Introduces additional Arbs for general-purpose data generation.

Kotest Reflective Arbs

When running tests on the JVM, Kotest supports automatically generating more complex Arbs.