Open-source testing software
1682 open-source libraries, tools and applications tagged testing, ranked by how closely testing is their primary purpose, then by adoption and maintenance health. Each entry links to a page with sources, use cases and when to choose or avoid it.
1682 products, primary matches first, then adoption-weighted; health v2 shown.
| Product | Health v2 | Stars | Maturity |
|---|---|---|---|
| rubberduck-vba/Rubberduck Rubberduck is a COM add-in that modernizes the legacy Visual Basic Editor (VBE) used for VBA and VB6 development. It provides static code a… | 10 | 2126 | active |
| bcoe/c8 c8 is a CLI tool that generates code coverage reports for Node.js applications using Node's built-in V8 coverage output, formatted with Ist… | 83 | 2122 | active |
| Blazemeter/taurus Taurus (bzt) is an automation-friendly framework for continuous performance and functional testing that wraps tools like JMeter, Gatling, L… | 88 | 2116 | active |
| blade-build/blade-build Blade is a declarative, high-performance build system from Tencent optimized for large-scale monorepo development, primarily for C/C++ but … | 90 | 2106 | active |
| mountebank-testing/mountebank Mountebank is an open-source service virtualization tool that creates over-the-wire test doubles for many protocols including HTTP, TCP, gR… | 79 | 2105 | active |
| streamich/memfs memfs is a TypeScript library providing in-memory implementations of the Node.js `fs` module API and the browser File System Access API, pl… | 93 | 2095 | active |
| Calva Calva is a Visual Studio Code extension providing a REPL-powered IDE for Clojure and ClojureScript development. It bundles inline evaluatio… | 94 | 2089 | active |
| jakerella/jquery-mockjax A jQuery plugin that mocks and simulates ajax requests and responses so front-end code can be tested without a live server. It intercepts $… | 87 | 2084 | stable |
| jarcoal/httpmock httpmock is a Go library for easily mocking HTTP responses from external resources in tests. It lets you register responders for exact URLs… | 83 | 2078 | stable |
| pytest-dev/pytest-cov pytest-cov is a pytest plugin that adds code coverage measurement to pytest runs, built on top of the coverage package. It provides extras … | 75 | 2065 | stable |
| linkedin/kafka-monitor Xinfra Monitor (formerly Kafka Monitor) is a Java framework for running long-running Kafka system tests and monitoring Kafka cluster health… | 24 | 2065 | active |
| Kong/insomnia-mockbin Insomnia Mockbin is the backend service powering the API mocking capability of Kong's Insomnia platform. It lets developers create custom m… | 67 | 2058 | active |
| pybuilder/pybuilder PyBuilder is a build automation tool written in pure Python, primarily for Python projects. It uses dependency-based programming with a plu… | 99 | 2056 | active |
| test-prof/test-prof TestProf is a Ruby gem providing a toolbox of profilers and helpers for analyzing and speeding up test suites, with integrations for ruby-p… | 74 | 2050 | active |
| pytest-dev/pytest-mock A pytest plugin that provides a `mocker` fixture wrapping the mock package's patching API. It automatically undoes mocks after each test an… | 73 | 2041 | stable |
| mgechev/javascript-algorithms A collection of JavaScript implementations of famous computer science algorithms, with generated API documentation and usage examples. It s… | 32 | 7818 | maintenance |
| ReportPortal ReportPortal is a self-hosted, service-oriented platform for aggregating, analyzing, and visualizing results from automated test runs. It i… | 92 | 2033 | active |
| elastic/rally Rally is a macrobenchmarking framework for Elasticsearch, developed in Python by Elastic. It automates cluster setup and teardown, benchmar… | 81 | 2031 | active |
| Chaos Toolkit The Chaos Toolkit (ctk) is a Python-based CLI for declaring and running Chaos Engineering experiments as JSON/YAML files. It is extensible … | 98 | 2029 | active |
| phpbench/phpbench PHPBench is a benchmarking framework for PHP, analogous to PHPUnit but for measuring performance rather than correctness. It runs code repe… | 84 | 2024 | active |
| kubernetes-sigs/cri-tools cri-tools provides crictl, a CLI for debugging Kubernetes nodes via the Kubelet Container Runtime Interface, and critest, a validation test… | 89 | 2021 | active |
| unkn0wn-root/resterm Resterm is a terminal-native API client and workbench for REST, GraphQL, gRPC, WebSocket and SSE, built around plain .http/.rest files that… | 79 | 1977 | active |
| gotcha/ipdb ipdb is a Python library that integrates the IPython debugger with the standard pdb interface, providing tab completion, syntax highlightin… | 60 | 1975 | active |
| matryer/is A lightweight testing mini-framework for Go that provides a simple assertion API (is.Equal, is.True, is.NoErr, is.Fail) on top of the stand… | 23 | 1975 | stable |
| VS Code JavaScript Debugger A DAP-based JavaScript debugger built by Microsoft that powers VS Code's built-in debugging for Node.js, Chrome, and Edge. It replaces the … | 88 | 1974 | active |
| w3c/epubcheck EPUBCheck is the official W3C conformance checker for EPUB publications, validating EPUB 2 and EPUB 3 files against the official specificat… | 86 | 1970 | stable |
| linkedin/dexmaker Dexmaker is a Java API for compile-time or runtime code generation targeting Android's Dalvik VM, producing .dex files instead of .class fi… | 64 | 1967 | stable |
| typelevel/scalacheck ScalaCheck is a property-based testing library for Scala and Java programs, inspired by Haskell's QuickCheck. It generates test cases autom… | 85 | 1964 | stable |
| beam-community/bamboo Bamboo is an adapter-based email library for Elixir that separates email creation from delivery, with built-in adapters for services like M… | 66 | 1960 | stable |
| senzhk/ADBKeyBoard ADBKeyBoard is an Android virtual keyboard (IME) that receives text input commands via ADB broadcast intents. It enables sending arbitrary … | 77 | 1955 | active |
| MatrAIx-ai/MatrAIx-Persona-8B MatrAIx is a population-scale, persona-driven evaluation framework that instantiates sampled persona records as LLM agents to simulate hete… | 56 | 1955 | active |
| Raathigesh/majestic Majestic is a zero-config graphical user interface for the Jest JavaScript testing framework, launched via npx or a global install from any… | 23 | 7446 | maintenance |
| laravel/dusk Laravel Dusk is a browser automation and end-to-end testing library for Laravel applications. It uses a standalone Chromedriver by default,… | 100 | 1944 | active |
| linki/chaoskube chaoskube is a Go CLI tool that periodically terminates random pods in a Kubernetes cluster to test resilience. It supports filtering targe… | 90 | 1938 | active |
| Kaspresso Kaspresso is an Android UI testing framework built on top of Espresso and UI Automator, offering a readable Kotlin DSL, page object support… | 78 | 1931 | active |
| gregnavis/active_record_doctor A Ruby gem that detects database issues in Rails applications, such as extraneous indexes, missing foreign key constraints, and validations… | 76 | 1931 | active |
| creusot-rs/creusot Creusot is a deductive verifier for Rust that proves code is free of panics, overflows, and assertion failures, and—with Pearlite contracts… | 95 | 1916 | active |
| charkost/prosopite Prosopite is a Ruby gem that auto-detects N+1 queries in Rails applications with zero false positives or false negatives. It monitors SQL q… | 72 | 1915 | active |
| selenide/selenide Selenide is a Java framework for writing concise, easy-to-read and easy-to-maintain automated UI tests, powered by Selenium WebDriver. It p… | 97 | 1911 | active |
| oblador/loki Loki is a visual regression testing tool for Storybook projects that captures screenshots of stories and diffs them against reference image… | 23 | 1909 | active |
| pytest-dev/pytest-xdist pytest-xdist is a pytest plugin that adds distributed test execution modes, most notably running tests in parallel across multiple CPU core… | 73 | 1908 | stable |
| Kail-Fu/InterviewOS InterviewOS is a self-hosted platform for running job-relevant technical assessments instead of algorithm puzzles. It records candidates' f… | 57 | 1906 | active |
| phpspec phpspec is a SpecBDD (Specification-based Behavior-Driven Development) testing framework for PHP. It guides developers to design and specif… | 88 | 1902 | active |
| rust-fuzz/cargo-fuzz cargo-fuzz is a Cargo subcommand that makes it easy to fuzz test Rust code with libFuzzer. It scaffolds fuzz targets, runs them, minimizes … | 75 | 1902 | active |
| BackstopJS BackstopJS is a Node.js tool that automates visual regression testing of web apps by capturing screenshots with Chrome Headless and compari… | 67 | 7187 | maintenance |
| devploit/nomore403 NoMore403 is a Go command-line tool that automates testing of HTTP 401/403 access-control bypasses via request path, method, header, and wi… | 81 | 1894 | active |
| Test Kitchen Test Kitchen is a Ruby-based CLI tool for integration testing infrastructure code and configuration management (e.g., Chef cookbooks) on is… | 96 | 1891 | active |
| stateright/stateright Stateright is a Rust actor library with an embedded model checker for implementing distributed systems, including a web UI for exploring sy… | 44 | 1889 | active |
| sweetpad-dev/sweetpad SweetPad is a VS Code/Cursor extension (plus a companion CLI) that lets developers build, run, debug, and test Swift/iOS, macOS, tvOS, watc… | 92 | 1881 | active |
| sstephenson/bats Bats is a TAP-compliant testing framework for Bash scripts and UNIX programs, where test cases are Bash functions with special @test syntax… | 10 | 7103 | maintenance |
| hcoles/pitest Pitest (PIT) is a state-of-the-art mutation testing system for Java and the JVM. It mutates bytecode to verify the effectiveness of unit te… | 99 | 1875 | active |
| patrick-kidger/jaxtyping A Python library providing type annotations and runtime type-checking for the shape and dtype of arrays and tensors in JAX, PyTorch, NumPy,… | 90 | 1873 | active |
| vercel-labs/emulate emulate is a zero-config CLI and programmatic library that runs stateful, production-fidelity local replacements for third-party APIs like … | 80 | 1871 | active |
| stepci/stepci Step CI is an open-source, language-agnostic API quality assurance framework configured via YAML, JSON, or JavaScript. It tests REST, Graph… | 23 | 1868 | active |
| fent/randexp.js A JavaScript library that generates random strings matching a given regular expression. It supports grouping, ranges, references, custom ch… | 67 | 1866 | stable |
| uber/ios-snapshot-test-case An iOS library (formerly Facebook's FBSnapshotTestCase) for snapshot testing UIViews and CALayers by comparing rendered images against stor… | 44 | 1865 | stable |
| VoidenHQ/voiden Voiden is an offline, Git-native API workspace built with Electron and TypeScript that lets developers design, test, and document APIs in p… | 85 | 1861 | active |
| FakeItEasy/FakeItEasy FakeItEasy is a .NET dynamic fake library for creating fake objects, mocks, and stubs in tests. It provides a fluent, context-aware API whe… | 85 | 1856 | active |
| rust-fuzz/afl.rs afl.rs is a Cargo subcommand that lets you fuzz test Rust code with AFLplusplus, the coverage-guided fuzzer. It instruments Rust builds so … | 72 | 1848 | active |
| asomers/mockall Mockall is a mock object library for Rust that generates mock implementations of traits and structs via procedural macros for use in unit t… | 75 | 1846 | stable |
| OpenAEV-Platform/openaev OpenAEV is an open-source platform for planning, scheduling, and running cyber adversary simulation campaigns and security exercises, from … | 95 | 1834 | active |
| evalplus/evalplus EvalPlus is a Python framework and benchmark suite for rigorously evaluating LLM-synthesized code, providing HumanEval+ and MBPP+ datasets … | 38 | 1826 | active |
| testing-library/cypress-testing-library A Cypress plugin that adds custom commands exposing DOM Testing Library query methods (getByLabelText, getByText, etc.) inside Cypress end-… | 67 | 1823 | active |
| erlang/rebar3 Rebar3 is the official build tool for Erlang, handling compilation, dependency and Hex package management, testing, and release packaging i… | 95 | 1822 | stable |
| dbt dbt-utils is an official dbt package providing reusable Jinja macros and generic data tests for dbt projects. It includes SQL generators (d… | 93 | 1822 | stable |
| viperproject/prusti-dev Prusti is a static verifier for Rust that formally proves absence of panics, integer overflows, and other bugs, and checks user-specified c… | 66 | 1817 | active |
| wallarm/gotestwaf GoTestWAF is a Go-based tool that simulates OWASP and API attacks (SQL injection, XSS, etc.) across REST, GraphQL, gRPC, SOAP, and XMLRPC p… | 88 | 1811 | active |
| elixir-wallaby/wallaby Wallaby is an Elixir library for concurrent end-to-end browser testing of web applications, simulating realistic user interactions. It mana… | 79 | 1806 | active |
| datafaker-net/datafaker Datafaker is a JVM library for generating fake data in Java, Kotlin, and Groovy, offering 250+ data providers covering names, addresses, da… | 90 | 1803 | active |
| agronholm/typeguard Typeguard is a Python library that performs run-time type checking based on PEP 484 type annotations, complementing static type checkers. I… | 90 | 1792 | active |
| Kubevious Kubevious is a suite of app-centric assurance, validation, and introspection tools for Kubernetes, including a web dashboard and a CLI for … | 58 | 1791 | active |
| buserror/simavr simavr is a lean, hackable Atmel AVR microcontroller simulator written in C, loading ELF/HEX firmware directly and emulating peripherals li… | 75 | 1790 | active |
| memtest86plus/memtest86plus Memtest86+ is a free, open-source, stand-alone memory tester for x86, x86-64, ARM AArch64, and LoongArch64 computers. It boots directly fro… | 78 | 1788 | active |
| BenMorris/NetArchTest NetArchTest is a fluent API library for .NET that enforces architectural rules (naming, dependencies, class design conventions) within unit… | 23 | 1786 | stable |
| ElixirLS ElixirLS is a language server for Elixir implementing the Language Server Protocol, providing IDE features like completion, go-to-definitio… | 88 | 1778 | active |
| AngusKit/AngusTester AngusTester is a self-hosted agile development and testing platform combining project management, functional/API/scenario testing, service … | 65 | 1772 | active |
| graphql-hive/graphql-inspector GraphQL Inspector is a suite of tools for validating and monitoring GraphQL schemas. It diffs two schemas to flag breaking, dangerous, or n… | 99 | 1768 | stable |
| richardszalay/mockhttp A testing library for .NET that replaces HttpClient's HttpMessageHandler with a mock handler, letting you configure canned responses via a … | 80 | 1762 | active |
| sqlancer/sqlancer SQLancer is a Java-based automated testing tool that finds logic and performance bugs in database management systems. It generates SQL test… | 68 | 1761 | active |
| DATA-DOG/go-sqlmock go-sqlmock is a mock library implementing Go's sql/driver interface to simulate SQL driver behavior in tests without a real database connec… | 60 | 6570 | maintenance |
| MikeMirzayanov/testlib A C++ header-only library for building competitive programming problem infrastructure: checkers, validators, generators, and interactors. I… | 64 | 1747 | stable |
| LemonAppDev/konsist Konsist is a structural linter and static code analyzer for Kotlin that enforces codebase consistency and architecture rules. Checks are wr… | 98 | 1746 | active |
| OSS CAD Suite OSS CAD Suite is a multi-platform binary distribution of open-source digital logic design and verification tools, including Yosys, GHDL, AB… | 94 | 1745 | active |
| Brightify/Cuckoo Cuckoo is a boilerplate-free mocking framework for Swift, using a compile-time code generator (Cuckoonator/build plugin) to create mock cla… | 88 | 1745 | active |
| kward/shunit2 shUnit2 is a xUnit-style unit test framework for Bourne-based shell scripts, modeled after JUnit and PyUnit. It lets developers write and r… | 52 | 1743 | stable |
| didi/DiDiPrism DiDiPrism (小桔棱镜) is a mobile tool from DiDi focused on capturing and analyzing user operation behavior on iOS and Android apps. It provides… | 36 | 1742 | active |
| Culebra/AndroidViewClient AndroidViewClient/culebra is a pure Python library and toolset for Android UI test automation, acting as a ViewServer and ADB client that e… | 88 | 1719 | active |
| Codecov A GitHub Action that uploads code coverage reports to Codecov from GitHub Actions workflows. It wraps the Codecov CLI/uploader to simplify … | 96 | 1715 | active |
| ivaylokenov/MyTested.AspNetCore.Mvc MyTested.AspNetCore.Mvc is a strongly-typed fluent unit testing library for ASP.NET Core MVC and API applications. It provides over 500 ass… | 87 | 1710 | active |
| SoapUI SoapUI is a free, open-source, cross-platform desktop application for functional testing of SOAP and REST APIs and web services. It support… | 72 | 1710 | active |
| nvim-java/nvim-java A Neovim plugin that provides a batteries-included Java development environment, bundling the jdtls language server, Spring Boot tools, deb… | 87 | 1707 | active |
| openpilot Firmware and Python userspace library for the comma.ai panda, a USB CAN and CAN FD interface device built on the STM32H725 microcontroller.… | 77 | 1705 | active |
| nordicsemi/Android-nRF-Connect nRF Connect for Mobile is an Android application for Bluetooth Low Energy developers that scans for BLE devices, inspects GATT services and… | 37 | 1700 | active |
| noodlewerk/NWPusher NWPusher is a macOS and iOS application plus framework for sending push notifications directly to the Apple Push Notification service (APNs… | 23 | 6300 | maintenance |
| mattpocock/evalite Evalite is a TypeScript-native eval runner for testing LLM-powered applications, built on Vitest with a local dev server UI for exploring o… | 55 | 1692 | active |
| google/atheris Atheris is a coverage-guided fuzzing engine for Python code and native CPython extensions, built on top of libFuzzer. It instruments Python… | 68 | 1688 | active |
| microsoft/vscode-cmake-tools CMake Tools is a Visual Studio Code extension by Microsoft that provides a full-featured workflow for CMake-based C/C++ projects. It suppor… | 92 | 1687 | active |
| sebastianbergmann/resource-operations A small PHP library that provides a list of PHP built-in functions which operate on resources. It is typically used as a development-time d… | 10 | 6252 | maintenance |
| SeaQL/FireDBG.for.Rust FireDBG is a time travel visual debugger for Rust that records program execution and lets developers inspect call trees, variables, and tim… | 21 | 1681 | active |
| wiremock/WireMock.Net WireMock.Net is a flexible .NET library for stubbing and mocking HTTP responses with advanced request matching and response templating, bas… | 93 | 1679 | active |