Suggest a tool

Category guides · published

"Best open source unit testing tools": 28 listed, sorted by GitHub stars

Metrics as of , from the GitHub or GitLab API of each repository. Refreshed monthly.

This guide covers the open-source test runners and assertion libraries in the FreeQATools unit testing category and groups them by language, role and documented parallel execution. The table is sorted by GitHub stars on each tool's fetch date, not by opinion.

What the category covers

The unit testing category holds test runners and assertion libraries for unit and integration tests, as defined on the category hub. Each tool fact in this guide links one source in the same sentence: a README, a documentation page or the tool's FreeQATools page. A fact that a project does not document appears as "not documented" in its comparison tables.

Languages

Jest is a JavaScript testing framework. Vitest is a test framework built on Vite. Mocha is a JavaScript test framework.

AVA is a test runner for Node.js. Jasmine is a BDD testing framework for JavaScript. tape is a TAP-producing test harness for Node and browsers.

JUnit is a testing framework for Java and the JVM. TestNG is a Java testing framework. Spock is a BDD-style testing framework for Java and Groovy. Kotest is a testing tool for Kotlin.

NUnit is a unit-testing framework for .NET languages. xUnit.net is a unit testing tool for C#, F# or Visual Basic code. GoogleTest is a C++ test framework. Catch2 is a unit testing framework for C++. doctest is a C++ testing framework.

pytest is a Python testing framework. Ginkgo is a testing framework for Go. Quick is a BDD testing framework for Swift and Objective-C. minitest is a Ruby testing library.

rspec-core is the RSpec component for Ruby. The rspec-core repository carries the host archive flag, so it is also listed on the Archived page.

PHPUnit is an xUnit-style testing framework for PHP. Pest is a testing framework for PHP. bats-core is a TAP-compliant framework for testing Bash scripts. Pester is a test and mock framework for PowerShell.

Runners and assertion libraries

Some unit testing entries are assertion or helper libraries used inside a test runner. AssertJ adds assertThat checks inside JUnit, TestNG or other framework tests. Chai offers assert, expect and should styles inside any JavaScript test framework. Testify provides assert, require, mock and suite packages that run with go test.

Property-based testing also appears in the unit testing category. Hypothesis adds Python property-based tests declared with the given decorator and strategies.

Parallel execution and reports

Parallel defaults differ between unit test runners. xUnit.net documents parallel test execution as on by default. JUnit runs tests in a single thread unless parallel execution is enabled. NUnit runs tests in parallel only where the Parallelizable attribute is set. tape executes tests serially.

Several unit test runners document sharding. Jest shards test suites with a shard option. Vitest shards across machines together with the blob reporter. Catch2 shards tests across processes. GoogleTest shards tests across machines through environment variables.

Documented report formats differ between unit test runners. pytest writes JUnit XML files. Catch2 reporters include XML, JUnit XML, TeamCity and TAP. Ginkgo generates JSON, JUnit XML, TeamCity and Go test JSON reports. Pest writes JUnit XML, TeamCity and TestDox output.

The Jest vs Vitest page sets the documented facts of both tools side by side. The Jest vs Mocha page uses the same row set for its pair. The GoogleTest vs Testify page is a further comparison in this category. The comparison method explains how each cell is sourced.

How this list is sorted

The quoted title is a search query, not a verdict. FreeQATools does not rank tools by opinion. The list below is sorted by GitHub stars, descending, as fetched from the repository host API on the date shown with each value.

Stars count how many accounts have starred a repository. They say nothing about fit for a given project, so the documented facts under each tool are the part to compare.

Every tool here meets the inclusion rules: an OSI-approved license, a public repository, software testing or quality as its primary purpose and at least one release or tag. Each status badge follows the status rules on the methodology page.

Open-source unit testing and test runners tools by GitHub stars

Unit testing and test runners tools. Sorted by GitHub stars, descending. Select a column heading to change the sort.
Jest45,46312026-09-181v30.5.22026-09-181MITTypeScriptactive
GoogleTest39,57212026-08-101v1.18.02026-09-171BSD-3-ClauseC++active
Testify26,21112026-08-191v1.12.12026-09-021MITGoactive
Mocha22,89712026-09-171v12.0.22026-09-191MITJavaScriptactive
Catch221,48912026-08-251v3.16.02026-09-141BSL-1.0C++active
AVA20,82812026-05-171v8.0.12026-05-171MITJavaScriptslow
PHPUnit20,05212026-09-15113.3.42026-09-221BSD-3-ClausePHPactive
Vitest17,14312026-09-151v5.0.12026-09-181MITTypeScriptactive
Jasmine15,81612026-08-151v7.0.12026-08-201MITJavaScriptactive
pytest14,52112026-06-1919.1.12026-09-211MITPythonactive
Pest11,72312026-09-171v5.2.12026-09-181MITPHPactive
Quick9,82712024-07-231v7.6.22026-03-171Apache-2.0Swiftslow
Ginkgo9,05612026-09-171v2.33.02026-09-221MITGoactive
Hypothesis9,00312026-09-081v6.168.02026-09-081MPL-2.0Pythonactive
Chai8,26912025-12-221v6.2.22026-09-211MITJavaScriptactive
JUnit7,05612026-08-071r6.1.32026-09-221EPL-2.0Javaactive
doctest6,86812026-07-061v2.5.32026-03-271MITC++slow
bats-core6,27512026-07-211v1.14.02026-09-211MITShellactive
tape5,79712026-06-181v5.10.22026-09-181MITJavaScriptactive
Kotest4,78912026-09-101v6.2.52026-09-171Apache-2.0Kotlinactive
xUnit.net4,60512026-09-121v3-4.0.12026-09-221Apache-2.0C#active
Spock3,63012025-12-111spock-2.42026-07-281Apache-2.0Javaactive
minitest3,41312026-05-011v6.0.62026-07-221MITRubyactive
Pester3,34512026-09-0916.2.02026-09-091Apache-2.0PowerShellactive
AssertJ2,84712026-01-241assertj-build-3.27.72026-09-221Apache-2.0Javaactive
NUnit2,62712026-05-191v4.6.12026-09-201MITC#active
TestNG2,05912026-01-2217.12.02026-09-221Apache-2.0Javaactive
rspec-core1,22812014-02-281v2.14.82024-11-301MITRubyarchived

1 Fetched from the GitHub or GitLab API on . Hover a value for its own date.

Filters for language, license and status are on the unit testing and test runners category page.

Tools in this list

Each entry gives the tool's one-line summary from its README and the facts its documentation states for this category, each with its source. Facts that are not documented are left out here and marked on the comparison pages.

  1. Jest

    JavaScript testing framework with a CLI, watch mode, matchers and snapshot testing. README, read 2026-09-22

    Languages for writing tests
    JavaScript; TypeScript via Babel or ts-jest source: README
    Test authoring format
    Code (test files using test() and expect() matchers) source: README
    Parallel or distributed execution
    Worker pool sized with --maxWorkers; test suite sharding with --shard source: Docs: Jest CLI Options
    CI integration
    --ci option for CI environments (new snapshots fail instead of being written) source: Docs: Jest CLI Options
    Report formats
    Coverage reporters clover, JSON, lcov and text by default; default, summary and github-actions test reporters source: Docs: Configuring Jest
    Install method
    npm (npm install --save-dev jest) or yarn (yarn add --dev jest) source: README
  2. GoogleTest

    C++ xUnit test framework bundled with GoogleMock, with death tests, parameterized tests and automatic test discovery. README, read 2026-09-22

    Languages for writing tests
    C++ (the 1.18.x branch requires C++17) source: README
    Test authoring format
    Code (C++ TEST() and TEST_F() macros with assertions) source: Docs: GoogleTest Primer
    Parallel or distributed execution
    Test sharding across machines with GTEST_TOTAL_SHARDS and GTEST_SHARD_INDEX source: Docs: Advanced GoogleTest Topics
    Report formats
    XML (based on the junitreport Ant task) and JSON via --gtest_output source: Docs: Advanced GoogleTest Topics
    Install method
    CMake build, standalone or inside an existing CMake project source: Docs: Generic Build Instructions
  3. Testify

    Go packages for assertions, mocks and struct-based test suites that run under go test. README, read 2026-09-22

    Languages for writing tests
    Go source: README
    Test authoring format
    Code (Go test functions with the assert, require, mock and suite packages, run with go test) source: README
    Install method
    go get github.com/stretchr/testify source: README
  4. Mocha

    JavaScript test framework for Node.js and the browser with BDD, TDD and other interfaces. README, read 2026-09-22

    Languages for writing tests
    JavaScript; TypeScript through Node.js type stripping or a loader such as tsx source: Docs: TypeScript
    Test authoring format
    Code with a selectable interface: BDD (default), TDD, Exports, QUnit, Require source: Docs: About Interfaces
    Parallel or distributed execution
    --parallel flag running test files in a pool of worker processes source: Docs: Parallel mode
    CI integration
    GitHub Actions reporter (--reporter github-actions) with inline failure annotations source: Docs: GitHub Actions reporter
    Report formats
    Spec (default), Dot, TAP, JSON, JSON Stream, HTML, XUnit, Markdown, Doc, GitHub Actions and others source: Docs: About Reporters
    Install method
    npm, pnpm or yarn dev dependency (npm i -D mocha) source: Docs: Getting Started
  5. Catch2

    Unit testing framework for C++ with basic micro-benchmarking and BDD-style macros. README, read 2026-09-22

    Languages for writing tests
    C++ source: README
    Test authoring format
    Code (C++ test cases with the TEST_CASE and REQUIRE macros) source: Docs: Tutorial
    Parallel or distributed execution
    Test sharding across processes (--shard-count, --shard-index) source: Docs: Command line
    CI integration
    CI and tooling integration guide page source: Docs: Tooling integration (CI, test runners and so on)
    Report formats
    XML, JUnit XML, TeamCity, TAP, Automake, SonarQube source: Docs: Tooling integration (CI, test runners and so on)
    Install method
    CMake (find_package or FetchContent); vcpkg (vcpkg install catch2) source: Docs: CMake integration
  6. AVA

    Test runner for Node.js with concurrent test execution, per-file isolation, and a TAP reporter. README, read 2026-09-22

    Languages for writing tests
    JavaScript on Node.js; TypeScript definitions included source: README
    Test authoring format
    Code (JavaScript test files using the test() function from ava) source: README
    Parallel or distributed execution
    Concurrent tests; each test file in its own worker thread source: Docs: Writing tests
    CI integration
    Splits test files across parallel CI builds via ci-parallel-vars; GitHub Actions matrix recipe source: Docs: Splitting tests in CI
    Report formats
    Human-readable reporter (default), TAP source: Docs: Command line (CLI)
    Install method
    npm (npm init ava, or npm install --save-dev ava); Yarn (yarn add ava --dev) source: README
  7. PHPUnit

    xUnit-style testing framework for PHP, distributed as a PHAR archive or through Composer. README, read 2026-09-22

    Languages for writing tests
    PHP source: README
    Test authoring format
    Code (PHP test classes extending TestCase with test* methods) source: Docs: Writing Tests for PHPUnit
    Report formats
    JUnit XML, TeamCity, TestDox (HTML and plain text), event logs as plain text source: Docs: The Command-Line Test Runner
    Install method
    PHAR download; Composer (composer require --dev phpunit/phpunit) source: Docs: Installation
  8. Vitest

    Vite-based test framework for JavaScript and TypeScript with Jest-compatible APIs, snapshots, mocking, coverage and a browser mode. README, read 2026-09-22

    Languages for writing tests
    JavaScript and TypeScript, with JSX source: README
    Test authoring format
    Code (describe/it test files with Chai and Jest-compatible expect) source: README
    Parallel or distributed execution
    Test files in parallel workers; sharding across machines (--shard with the blob reporter) source: Docs: Improving Performance
    CI integration
    GitHub Actions reporter with annotations for test failures source: Docs: Reporters
    Report formats
    Default, verbose, tree, dot, JUnit XML, JSON, HTML, TAP, TAP flat, GitHub Actions, blob; custom reporters source: Docs: Reporters
    Install method
    npm (npm install -D vitest); yarn, pnpm and bun also documented source: Docs: Getting Started
  9. Jasmine

    Behavior-driven development testing framework for JavaScript that runs in browsers and Node.js without DOM dependencies. README, read 2026-09-22

    Languages for writing tests
    JavaScript source: README
    Test authoring format
    Code (JavaScript specs with describe and it functions) source: Docs: Your first suite
    Parallel or distributed execution
    Parallel processes in Node.js via --parallel=<n> (5.0.0 and later) source: Docs: Running Specs in Parallel
    Report formats
    Console reporter by default; custom reporters via --reporter source: Docs: Using Jasmine with Node
    Install method
    npm (npm install --save-dev jasmine, then npx jasmine init) source: Docs: Using Jasmine with Node
  10. pytest

    Python testing framework with plain assert introspection, test auto-discovery, fixtures and a plugin architecture. README, read 2026-09-22

    Languages for writing tests
    Python (3.10+ or PyPy3) source: README
    Test authoring format
    Code (Python test_ functions and Test classes with plain assert) source: Docs: Get Started
    Parallel or distributed execution
    pytest-xdist plugin distributes tests to CPUs and remote hosts source: Docs: How to install and use plugins
    CI integration
    Detects CI through the CI and BUILD_NUMBER (Jenkins) environment variables source: Docs: CI Pipelines
    Report formats
    Terminal output; JUnit XML (--junit-xml=path) source: Docs: Managing pytest's output
    Install method
    pip (pip install -U pytest) source: Docs: Get Started
  11. Pest

    PHP testing framework requiring PHP 8.4 or later, with a drift plugin for PHPUnit tests and a browser testing plugin. README, read 2026-09-22

    Languages for writing tests
    PHP (8.4+) source: Docs: Installation
    Test authoring format
    Code (PHP closures passed to test(), it() and describe()) source: Docs: Writing Tests
    Parallel or distributed execution
    Multiple processes via --parallel; --processes sets the process count source: Docs: Optimizing Tests
    CI integration
    pest --ci command; examples for GitHub Actions, GitLab CI/CD, Bitbucket Pipelines and Chipper CI source: Docs: Continuous Integration
    Report formats
    JUnit XML, TeamCity, TestDox (HTML and plain text), event logs as plain text source: Docs: CLI API Reference
    Install method
    Composer (composer require pestphp/pest --dev --with-all-dependencies) source: Docs: Installation
  12. Quick

    BDD testing framework for Swift and Objective-C with describe, context and it blocks, paired with Nimble matchers. README, read 2026-09-22

    Languages for writing tests
    Swift, Objective-C source: README
    Test authoring format
    Code (QuickSpec classes with describe, context and it blocks) source: Docs: Organized Tests with Quick Examples and Example Groups
    Install method
    Git submodules, CocoaPods (pod 'Quick'), Swift Package Manager source: Docs: Installing Quick
  13. Ginkgo

    Go testing framework with a BDD-style spec DSL, parallel runs and a CLI, paired with Gomega matchers. README, read 2026-09-22

    Languages for writing tests
    Go source: README
    Test authoring format
    Code (Go specs with the Describe, Context, When and It DSL) source: README
    Parallel or distributed execution
    Parallel spec runs via ginkgo -p source: README
    CI integration
    CI configuration section: a documented flag set for CI runs, ginkgo invoked via go run source: Docs: Ginkgo
    Report formats
    Console; JSON, JUnit XML, TeamCity, Go test JSON; custom reporting source: Docs: Ginkgo
    Install method
    Go modules (go install github.com/onsi/ginkgo/v2/ginkgo) source: Docs: Ginkgo
  14. Hypothesis

    Property-based testing library for Python that generates inputs from strategies and reports minimal failing examples. README, read 2026-09-22

    Languages for writing tests
    Python source: README
    Test authoring format
    Code (Python property-based tests with @given and strategies) source: README
    Parallel or distributed execution
    Thread-safe since 6.136.9; separate tests or the same test can run in multiple threads source: Docs: Compatibility
    CI integration
    Settings profiles, for example a CI profile source: Docs: Configuring test settings
    Install method
    pip (pip install hypothesis); optional extras source: README
  15. Chai

    BDD and TDD assertion library for Node.js and the browser with assert, expect and should styles. README, read 2026-09-22

    Languages for writing tests
    JavaScript (Node.js and browsers) source: README
    Test authoring format
    Code: assert, expect or should assertion styles inside any JavaScript test framework source: README
    Install method
    npm (npm install --save-dev chai); browser build from a self-hosted copy or an npm CDN source: Docs: Installation
  16. JUnit

    Java testing framework made of the JUnit Platform, the Jupiter programming model and the Vintage engine. README, read 2026-09-22

    Languages for writing tests
    JVM languages (the JUnit Platform launches testing frameworks on the JVM) source: Docs: Overview
    Test authoring format
    Code: JUnit Jupiter programming model (@Test methods), plus a Vintage engine for JUnit 3 and 4 tests source: Docs: Overview
    Parallel or distributed execution
    Opt-in parallel execution (junit.jupiter.execution.parallel.enabled); sequential in a single thread by default source: Docs: Parallel Execution
    Report formats
    XML reports in Open Test Reporting and legacy formats (junit-platform-reporting) source: Docs: JUnit Platform Reporting
    Install method
    Gradle or Maven dependency (org.junit.jupiter:junit-jupiter) source: Docs: Build Support
  17. doctest

    C++11 testing framework that lets tests sit inside production code and be compiled out of binaries. README, read 2026-09-22

    Languages for writing tests
    C++11 and later (tag 1.2.9 for C++98) source: README
    Test authoring format
    C++ code with test macros, in separate test files or directly in production code source: README
    Parallel or distributed execution
    Test cases run serially; parallel runs by invoking the executable several times with different test ranges source: Docs: FAQ
    Report formats
    Console, doctest XML, JUnit-compatible XML; custom reporters source: Docs: Reporters
    Install method
    Single header doctest.h (download, or CMake find_package or FetchContent) source: Docs: Build systems
  18. bats-core

    TAP-compliant testing framework for Bash scripts and other UNIX programs, with tests written as Bash files. README, read 2026-09-22

    Languages for writing tests
    Bash (3.2 or above) source: README
    Test authoring format
    Bash script files with @test blocks source: README
    Parallel or distributed execution
    --jobs parameter, using GNU parallel or a compatible replacement; serial by default source: Docs: Usage
    CI integration
    TAP output when run from a continuous integration system source: Docs: Usage
    Report formats
    pretty, TAP, TAP13, JUnit; custom formatter executables; report files via --report-formatter source: Docs: Usage
    Install method
    npm (bats), Homebrew (bats-core), Linux distribution packages, Docker image bats/bats, install.sh from source source: Docs: Installation
  19. tape

    Test harness for Node and browsers that produces TAP output, with a minimal core extended by modules. README, read 2026-09-22

    Languages for writing tests
    JavaScript (Node.js and browsers) source: README
    Test authoring format
    Code: JavaScript test files that require tape and call test() with t assertions source: README
    Parallel or distributed execution
    Tests execute serially source: README
    CI integration
    --no-only flag for CI environments (fails the run if an only test exists) source: README
    Report formats
    TAP text stream, or an object stream (objectMode); separate npm modules read TAP source: README
    Install method
    npm (npm install tape --save-dev) source: README
  20. Kotest

    Kotlin testing tool with separate test framework, assertions and property testing modules for JVM and multiplatform targets. README, read 2026-09-22

    Languages for writing tests
    Kotlin (JVM, JavaScript, Native and Wasm targets) source: Docs: Setup
    Test authoring format
    Code: Kotlin spec classes using the Kotest DSL in testing styles such as FunSpec and DescribeSpec source: Docs: Writing Tests
    Parallel or distributed execution
    Specs and tests can be launched concurrently (Kotest 6 concurrency modes) source: Docs: Concurrency
    Report formats
    JUnit XML via the kotest-extensions-junitxml module; HTML reporter extension source: Docs: JUnit XML
    Install method
    Gradle dependency io.kotest:kotest-runner-junit5 on the JVM; Kotest Gradle plugin for multiplatform source: Docs: Setup
  21. xUnit.net

    Unit testing tool for C#, F# or Visual Basic code on .NET and .NET Framework. README, read 2026-09-22

    Languages for writing tests
    C#, F#, Visual Basic source: README
    Test authoring format
    Code: test methods marked [Fact] or [Theory] in .NET test projects source: Docs: Getting Started with xUnit.net v3
    Parallel or distributed execution
    Parallel test execution, on by default since version 2; conservative and aggressive algorithms source: Docs: Running Tests in Parallel
    CI integration
    Azure DevOps Pipelines guide (Visual Studio Test task) source: Docs: Getting Test Results in Azure DevOps Pipelines
    Report formats
    xUnit.net XML (v2 format) from the console and MSBuild runners; XSL-T transforms to HTML and NUnit source: Docs: xUnit.net XML Format v2
    Install method
    .NET templates (dotnet new install xunit.v3.templates) and NuGet packages such as xunit.v3 source: Docs: Getting Started with xUnit.net v3
  22. Spock

    BDD-style testing and specification framework for Java and Groovy, built on the JUnit Platform. README, read 2026-09-22

    Languages for writing tests
    Groovy specifications for Java and Groovy applications source: Docs: Introduction
    Test authoring format
    Code: Groovy specification classes with given, when, then, expect, cleanup, where and filter blocks source: Docs: Spock Primer
    Parallel or distributed execution
    Experimental parallel execution on the JUnit Platform (runner.parallel.enabled); sequential by default source: Docs: Parallel Execution
    CI integration
    Runs on continuous integration servers as a JUnit Platform engine source: Docs: Introduction
    Install method
    Maven Central (org.spockframework, spock-core module); JitPack for intermediate builds source: README
  23. minitest

    Ruby testing library with unit tests, a spec engine and benchmark assertions. README, read 2026-09-22

    Languages for writing tests
    Ruby source: README
    Test authoring format
    Ruby code: Minitest::Test classes with test_ methods, spec-style describe and it blocks, or benchmarks source: README
    Parallel or distributed execution
    Thread-based parallel test runs; MT_CPU sets the thread count source: README
    CI integration
    minitest-ci reporter plugin (listed in the README) source: README
    Report formats
    Console output; custom reporters; JUnit-style XML via the minitest-junit plugin source: README
    Install method
    RubyGems (gem install minitest) source: README
  24. Pester

    Test and mock framework for PowerShell with assertions, built-in mocking, JaCoCo code coverage and NUnit XML output. README, read 2026-09-22

    Languages for writing tests
    PowerShell (Windows PowerShell 5.1 and PowerShell 7.4 or newer) source: README
    Test authoring format
    PowerShell test files (*.Tests.ps1) with Describe, Context and It blocks source: README
    Parallel or distributed execution
    Experimental in v6: test files run concurrently, one per runspace (Run.Parallel) source: Docs: Parallel execution
    CI integration
    TFS, AppVeyor, TeamCity, Jenkins; AppVeyor example configuration source: README
    Report formats
    XML test results in NUnit 2.5, NUnit 3 or JUnit 4 schema source: Docs: Test Results
    Install method
    PowerShell Gallery (Install-Module -Name Pester -Force) source: README
  25. AssertJ

    Java assertion library with type-specific assertThat checks for JUnit, TestNG and other frameworks, plus Guava, DB and Swing modules. README, read 2026-09-22

    Languages for writing tests
    Java 8 or higher; compatible with Kotlin 1.9 or higher source: Docs: AssertJ Core quick start
    Test authoring format
    Code (Java assertThat fluent assertions inside JUnit, TestNG or other framework tests) source: README
    Install method
    Maven or Gradle dependency org.assertj:assertj-core source: Docs: AssertJ Core quick start
  26. NUnit

    Unit-testing framework for .NET languages covering unit, integration and system tests on macOS, Linux and Windows. README, read 2026-09-22

    Languages for writing tests
    All .NET languages source: README
    Test authoring format
    Code (.NET test classes and test methods referencing NUnit.Framework) source: Docs: Installation
    Parallel or distributed execution
    ParallelizableAttribute on assembly, fixture or method; tests are not parallel by default source: Docs: Parallelizable
    CI integration
    NUnit3TestAdapter package for CI build agents such as Azure DevOps and GitHub Actions source: Docs: Installation
    Report formats
    XML results: nunit3 native format, nunit2 legacy format (console runner --result option) source: Docs: Console Command Line
    Install method
    NuGet package NUnit, or the dotnet new nunit project template source: Docs: Installation
  27. TestNG

    Java testing framework with annotations, thread-pool execution, data providers and dependent methods. README, read 2026-09-22

    Languages for writing tests
    Java (Java 11 or higher) source: README
    Test authoring format
    Code (Java with TestNG annotations); suite settings in testng.xml source: Docs: TestNG Documentation
    Parallel or distributed execution
    Thread pools set by the parallel attribute (methods, tests, classes, instances) and thread-count in testng.xml source: Docs: TestNG Documentation
    Report formats
    HTML (index.html), TestNG XML reporter, XML for JUnitReport; custom reporters source: Docs: TestNG Documentation
    Install method
    Maven or Gradle dependency org.testng:testng source: Docs: TestNG Documentation
  28. rspec-core

    RSpec component for Ruby that structures executable examples and provides the rspec command; new releases come from rspec/rspec. README, read 2026-09-22

    Languages for writing tests
    Ruby source: Docs: RSpec
    Test authoring format
    Code (Ruby describe and it blocks in spec files) source: README
    Report formats
    Built-in formatters: progress (default) and documentation; output to a file with --out source: Docs: --format option
    Install method
    RubyGems (gem install rspec-core, or gem install rspec) source: README

Comparisons in this category