awesome-repositories.com
Blog
MCP
awesome-repositories.com

Discover the best open-source repositories with AI-powered search.

ExploreCurated searchesOpen-source alternativesSelf-hosted softwareBlogSitemap
ProjectAboutHow we rankPressMCP server
LegalPrivacyTerms
© 2026 Bringes Technology SRL·VAT RO45896025·hello@awesome-repositories.com
·
kotest avatar

kotest/kotest

0
View on GitHub↗
4,785 stars·701 forks·Kotlin·Apache-2.0·10 viewskotest.io↗

Kotest

Kotest is a comprehensive testing framework for Kotlin designed for writing and executing tests across various styles and platforms. It serves as a multiplatform test runner and a fluent assertion library, providing a toolset for both unit and integration testing in Kotlin applications.

The framework supports multiple testing methodologies, including behavior-driven development with nested test hierarchies, property-based testing using automated data generation, and data-driven testing. It also includes snapshot testing to detect regressions by comparing current outputs against stored reference files.

The system features a coroutine-aware execution engine and a pluggable architecture that allows for custom matchers and third-party extensions. It includes a composite assertion aggregation system to collect multiple failures into a single report and a translation layer to map test suites to platform-specific execution engines.

Features

  • Kotlin Unit Testing - Provides a comprehensive framework for writing and running unit and integration tests for Kotlin applications.
  • BDD Test Hierarchies - Supports recursive structural models for organizing tests in unlimited depth using BDD or hierarchical styles.
  • Data-Driven Test Parameterization - Implements a mechanism to execute the same test logic repeatedly by injecting diverse sets of input parameters.
  • Data-Driven Testing - Supports running the same test logic against multiple sets of input parameters to ensure consistent behavior.
  • Fluent Assertions - Ships a fluent assertion library with matchers and a domain-specific language for verifying Kotlin object states.
  • Property-Based Testing - Includes a mechanism that automatically produces random input sets to verify code invariants across thousands of edge cases.
  • Behavior Driven Development - Provides frameworks for organizing test cases using hierarchical nesting and natural language styles for BDD.
  • Cross-Platform Test Runners - Includes a translation layer that maps generic test suites to platform-specific execution engines for multiplatform compatibility.
  • Kotlin Multiplatform Test Runners - Ships an execution engine that runs tests across different Kotlin multiplatform targets using integrated infrastructure.
  • Kotlin Testing Frameworks - Offers a comprehensive toolset for writing and executing tests in Kotlin with support for multiple styles and platforms.
  • Test Execution Runtimes - Ships a coroutine-aware execution engine that manages dispatchers and timeouts for asynchronous Kotlin tests.
  • Plugin-Based Extensibility - Features a flexible architectural hook system allowing third-party libraries to integrate specialized testing tools.
  • Assertion Aggregators - Provides a composite assertion system that aggregates multiple failures into a single report to reduce test output noise.
  • Snapshot Testing - Includes snapshot testing to detect regressions by comparing current outputs against stored reference files.
  • Custom Matchers - Provides a pluggable interface for defining custom matchers to validate complex data structures.
  • Testing & Quality Assurance - Powerful, elegant and flexible test framework for Kotlin

Star history

Star history chart for kotest/kotestStar history chart for kotest/kotest

AI search

Explore more awesome repositories

Describe what you need in plain English — the AI ranks thousands of curated open-source projects by relevance.

Start searching with AI

Frequently asked questions

What does kotest/kotest do?

Kotest is a comprehensive testing framework for Kotlin designed for writing and executing tests across various styles and platforms. It serves as a multiplatform test runner and a fluent assertion library, providing a toolset for both unit and integration testing in Kotlin applications.

What are the main features of kotest/kotest?

The main features of kotest/kotest are: Kotlin Unit Testing, BDD Test Hierarchies, Data-Driven Test Parameterization, Data-Driven Testing, Fluent Assertions, Property-Based Testing, Behavior Driven Development, Cross-Platform Test Runners.

What are some open-source alternatives to kotest/kotest?

Open-source alternatives to kotest/kotest include: thomhurst/tunit — TUnit is a comprehensive C# testing framework, mocking library, and fluent assertion tool. It utilizes source… onsi/ginkgo — Ginkgo is a behavior-driven development testing framework, assertion library, and test runner for Go. It provides a… codeception/codeception — Codeception is a full-stack testing framework for PHP applications that provides a unified interface for unit,… mockk/mockk — MockK is a Kotlin test double framework that creates mocks, spies, and relaxed mocks for unit testing, with support… kiwi-bdd/kiwi — Kiwi is a behavior-driven development framework and specification library for iOS. It functions as a wrapper for… xunit/xunit — xunit is a unit testing framework for the .NET ecosystem designed to execute isolated code units and report failures…

Open-source alternatives to Kotest

Similar open-source projects, ranked by how many features they share with Kotest.
  • thomhurst/tunitthomhurst avatar

    thomhurst/TUnit

    3,744View on GitHub↗

    TUnit is a comprehensive C# testing framework, mocking library, and fluent assertion tool. It utilizes source generation for test discovery and mock creation, ensuring compatibility with Native AOT and IL trimming by eliminating the need for runtime reflection and proxies. The framework provides specialized capabilities for integration testing, including the management of distributed application lifecycles, isolated database schemas, and the correlation of telemetry and logs across process boundaries via OTLP. It also includes an HTTP testing utility to intercept network exchanges and mock AP

    C#csharpdotnettest
    View on GitHub↗3,744
  • onsi/ginkgoonsi avatar

    onsi/ginkgo

    9,014View on GitHub↗

    Ginkgo is a behavior-driven development testing framework, assertion library, and test runner for Go. It provides a domain-specific language for writing human-readable specifications, organizing tests into hierarchical containers and subjects to describe system behavior. The project distinguishes itself through advanced execution control and observability, featuring a test runner capable of parallel distribution, sharding, and randomized execution order to detect flaky tests. It includes specialized diagnostic tools for goroutine leak detection, hanging spec monitoring, and failure state debu

    Go
    View on GitHub↗9,014
  • codeception/codeceptionCodeception avatar

    Codeception/Codeception

    4,855View on GitHub↗

    Codeception is a full-stack testing framework for PHP applications that provides a unified interface for unit, functional, and acceptance testing. It serves as a tool for automating real desktop and mobile browsers via the WebDriver protocol and acts as a client for testing REST and SOAP APIs. The framework is distinguished by its support for Behavior-Driven Development, allowing users to write human-readable test specifications in Gherkin language to align technical tests with business requirements. It implements actor-based action mapping to connect these natural language steps to executabl

    PHP
    View on GitHub↗4,855
  • mockk/mockkmockk avatar

    mockk/mockk

    5,747View on GitHub↗

    MockK is a Kotlin test double framework that creates mocks, spies, and relaxed mocks for unit testing, with support for final classes, static methods, and coroutines. It functions as a bytecode instrumentation library that modifies compiled class files at load time to intercept constructors, final methods, and static functions without source changes, and also provides dedicated libraries for constructor mocking and coroutine mocking. The framework is designed specifically for Kotlin, handling Kotlin-specific constructs like extension functions, singletons, and suspend functions. MockK disting

    Kotlinargument-matcherschain-callshacktoberfest
    View on GitHub↗5,747
  • See all 30 alternatives to Kotest→