Strikt is an assertion library for Kotlin intended for use with a test runner such as JUnit, Minutest, Spek, or KotlinTest.
Strikt uses a fluent assertion style similar to AssertJ but leverages Kotlin's type system and extension functions rather than needing a complex hierarchy of assertion builder classes.
Strikt is under development, but 100% usable. The API may change until a version 1.0 is released. Any suggestions, issue reports, contributions, or feedback are very welcome.
Strikt is available from Maven Central.
repositories {
mavenCentral()
}
dependencies {
testImplementation("io.strikt:strikt-core:<version>")
}
See the button below or releases/latest for the current version number.
Strikt has the following additional libraries:
strikt-arrow
-- supports data types from the Arrow functional programming library.strikt-jackson
-- supports the Jackson JSON library.strikt-jvm
-- supports types from the Java SDK.strikt-mockk
-- supports types from the MockK library.strikt-protobuf
-- supports Protobuf / gRPC.strikt-spring
-- supports the Spring Framework.
Versions are synchronized with the core Strikt library.
To install additional libraries include dependencies in your Gradle build. For example:
dependencies {
testImplementation("io.strikt:strikt-jvm:<version>")
}
Strikt supplies a BOM that is useful for aligning versions when using more than one Strikt module.
dependencies {
// BOM dependency
testImplementation(platform("io.strikt:strikt-bom:<version>"))
// Versions can be omitted as they are supplied by the BOM
testImplementation("io.strikt:strikt-jackson")
testImplementation("io.strikt:strikt-jvm")
testImplementation("io.strikt:strikt-spring")
}
Please see the project documentation and API docs.
Join the #strikt channel on the Kotlin Slack.
Follow @stri_kt on Twitter for updates and release notifications.