Kotest is a comprehensive, multiplatform testing framework for Kotlin, providing a rich assertion library, property-based testing, multiple spec styles (FunSpec, StringSpec, WordSpec, etc.), a modular test engine, and extensive extension system (Spring, Testcontainers, Allure, etc.). It includes IntelliJ IDEA plugin for gutter icons, test navigation, and run configurations, as well as Gradle plugin for build integration. The framework is well-architected with clean abstractions like the Matcher interface, Arb/Gen combinators, and test execution interceptors, though some deprecated APIs and experimental features indicate ongoing evolution.
phpspec is a mature Behavior-Driven Development (BDD) testing framework for PHP, delivered both as a CLI tool (`bin/phpspec`) and an embeddable library. In production it runs executable specifications (spec files extending `ObjectBehavior`) via two Symfony Console commands: `describe` generates a spec skeleton from a class name, and `run` discovers spec files through PSR-0/PSR-4 locators, executes them through a layered runner stack (suite -> specification -> example), evaluates assertions through a pluggable matcher library (identity, comparison, throw, trigger, iterable, array, string, etc.), and renders results through swappable formatters (progress, pretty, dot, JUnit, TAP, TeamCity, HTML, JSON). A distinctive feature is listener-driven code generation: when a spec references a missing class, method, collaborator, or named constructor, listeners prompt the developer and generate real PHP source via token-based code writers, then transparently re-run the suite using platform-specific process re-runners (pcntl, proc_open, Windows passthru). The framework couples to Prophecy for mocking and rewrites type hints in spec files at load time using a tokenizer state machine so Prophecy doubles work with modern PHP union/intersection types.