Open-source testing software
1069 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.
1069 products, primary matches first, then adoption-weighted; health v2 shown.
| Product | Health v2 | Stars | Maturity |
|---|---|---|---|
| anishathalye/porcupine Porcupine is a fast linearizability checker written in Go, used to test the correctness of concurrent and distributed systems against seque… | 75 | 1256 | active |
| fscheck/FsCheck FsCheck is a property-based testing library for .NET, ported from Haskell's QuickCheck. Programmers specify properties that functions shoul… | 92 | 1252 | active |
| fergusstrange/embedded-postgres A Go library that runs a real PostgreSQL database locally on Linux, macOS, or Windows as part of another Go application or test. It downloa… | 80 | 1250 | active |
| Playbook Playbook is a Swift library for iOS that lets developers build and preview UI components in isolation, inspired by Storybook, supporting bo… | 23 | 1243 | active |
| krzysztofzablocki/Difference A Swift library that highlights exactly which properties differ between two instances of any type, producing readable diffs instead of Xcod… | 28 | 1242 | active |
| seveniruby/AppCrawler AppCrawler is a Scala-based automated app traversal (crawler) testing tool built on Appium, supporting Android, iOS, mini-programs, and Har… | 54 | 1241 | active |
| cksac/fake-rs A Rust library and command-line tool for generating fake data such as names, addresses, dates, and internet identifiers across 13 locales. … | 77 | 1240 | active |
| go-testfixtures/testfixtures A Go library that mimics Ruby on Rails-style test fixtures, loading YAML fixture files into a real SQL database before each test. It wipes … | 76 | 1238 | active |
| myzhan/boomer Boomer is a Go library that acts as a high-performance load generator for Locust, spawning thousands of goroutines to run test code concurr… | 70 | 1238 | active |
| theintern/intern Intern is a complete JavaScript testing stack supporting unit and functional testing in Node.js and browsers, with built-in code coverage, … | 23 | 4343 | maintenance |
| apache/cassandra-ccm CCM (Cassandra Cluster Manager) is a Python script and library for creating, launching, managing, and destroying small Apache Cassandra clu… | 64 | 1235 | active |
| hexclave/pgmock pgmock is an in-memory PostgreSQL mock server for unit and E2E tests that runs entirely in WebAssembly on Node.js and in the browser, with … | 46 | 1231 | active |
| android/android-test The AndroidX Test Libraries provide an extensive framework for testing Android apps, including JUnit 4 support and functional UI tests via … | 68 | 1230 | active |
| testsigmahq/testsigma Testsigma is a GenAI-powered, codeless test automation platform for automating web, mobile, desktop, API, and enterprise app (Salesforce, S… | 62 | 1226 | active |
| Lyrebird Lyrebird is a plugin-based testing workbench for mobile applications that intercepts and mocks HTTP/HTTPS network traffic via a proxy. It p… | 38 | 1225 | active |
| qu-niao/LimApiTest LimApiTest (Lim, 'Less is More') is a lightweight web-based API testing platform built with Django and TypeScript. It streamlines interface… | 52 | 1223 | active |
| yanchunhuo/AutomationTest A Python-based automation testing framework supporting API automation, web UI automation (Selenium), app UI automation (Appium), and perfor… | 59 | 1221 | active |
| ovh/venom Venom is a CLI tool for creating, managing, and running integration tests declaratively. It executes test suites using built-in executors (… | 74 | 1217 | active |
| php-vcr PHP-VCR is a PHP port of Ruby's VCR library that records a test suite's HTTP interactions to cassette files and replays them in future test… | 93 | 1213 | active |
| Fastbot Fastbot is a model-based GUI testing tool for Android apps that models GUI transitions using machine learning and reinforcement learning to… | 41 | 1210 | active |
| pedrovgs/Shot Shot is a Gradle plugin and Android library for writing and running screenshot tests on Android apps, supporting both regular views and Jet… | 47 | 1208 | active |
| apiaryio/dredd Dredd is a language-agnostic command-line tool that validates an API's backend implementation against its API description document (API Blu… | 10 | 4223 | maintenance |
| google/fuzzbench FuzzBench is a free Google-run service and framework that rigorously evaluates fuzzers on real-world benchmarks at large scale. It provides… | 57 | 1207 | active |
| nbQA-dev/nbQA nbQA is a command-line tool that lets you run standard Python code quality tools like ruff, black, isort, mypy, pylint, flake8, and pyupgra… | 68 | 1205 | active |
| aws-ia/taskcat TaskCat is a Python-based testing framework and CLI tool for AWS CloudFormation templates. It deploys templates across multiple AWS regions… | 75 | 1204 | active |
| google/AFL American Fuzzy Lop (AFL) is a security-oriented, coverage-guided fuzzer that uses compile-time instrumentation and genetic algorithms to di… | 10 | 4198 | maintenance |
| ethereum/execution-specs An executable Python reference implementation of Ethereum's Execution Layer (EELS), including the EVM and consensus-critical behavior, with… | 95 | 1200 | active |
| elixirs/faker Faker is a pure Elixir library for generating fake data such as names, addresses, and other dummy content. It is commonly used for testing,… | 82 | 1199 | active |
| law-chain-hot/websocket-devtools A Chrome/Edge DevTools browser extension for monitoring, simulating, and blocking WebSocket traffic. It integrates as a native DevTools pan… | 83 | 1198 | active |
| paralleldrive/riteway Riteway is a JavaScript unit testing assertion library and test runner that enforces a simple, readable, explicit test style based on the '… | 67 | 1196 | active |
| powermock/powermock PowerMock is a Java framework that extends mocking libraries like EasyMock and Mockito to enable unit testing of code normally regarded as … | 23 | 4170 | maintenance |
| sasha-s/go-deadlock A Go library providing drop-in replacements for sync.Mutex and sync.RWMutex that detect deadlocks at runtime. It records lock ordering per … | 83 | 1194 | active |
| dmaicher/doctrine-test-bundle A Symfony bundle that isolates Doctrine database tests by wrapping DBAL drivers with a StaticDriver and using a PHPUnit extension to begin … | 94 | 1193 | stable |
| rails_best_practices rails_best_practices is a code metric tool that checks the quality of Rails code against a set of best-practice rules. It runs from the com… | 64 | 4157 | maintenance |
| WeTransfer/Mocker Mocker is a Swift library that mocks data requests from URLSession and Alamofire using a custom URLProtocol, without changing app code. It … | 23 | 1191 | active |
| swiftlang/swift-corelibs-xctest The open-source Swift core library providing the XCTest unit testing framework for Swift packages and applications across all platforms Swi… | 88 | 1189 | active |
| qustavo/httplab HTTPLab is an interactive terminal-based web server that lets developers inspect incoming HTTP requests and forge custom responses in real … | 23 | 4142 | maintenance |
| email-spec/email-spec A Ruby library providing RSpec/MiniTest matchers and Cucumber/Spinach steps for testing email delivery in applications using ActionMailer o… | 62 | 1187 | active |
| spring-projects/spring-restdocs Spring REST Docs is a Java library that generates accurate documentation for RESTful APIs by combining hand-written Asciidoctor content wit… | 75 | 1185 | active |
| wellwelwel/poku Poku is a zero-dependency, cross-platform test runner for JavaScript and TypeScript that runs the same test suite on Node.js, Bun, and Deno… | 78 | 1184 | active |
| dorny/test-reporter A GitHub Action that parses test results in XML or JSON formats from popular testing frameworks and displays them as GitHub Check Runs or j… | 84 | 1182 | active |
| kiwi-bdd/Kiwi Kiwi is a Behavior Driven Development (BDD) testing library for iOS written in Objective-C. It lets developers write readable spec-style te… | 23 | 4101 | maintenance |
| apache/groovy-geb Apache Geb is a Groovy-based browser automation library built on WebDriver, combining jQuery-like content selection with Page Object modell… | 76 | 1174 | active |
| jest-community/eslint-plugin-jest An ESLint plugin providing lint rules for Jest test suites, catching issues like disabled or focused tests, invalid expectations, and enfor… | 95 | 1173 | active |
| k1LoW/awspec awspec is a Ruby gem that lets you write RSpec tests for AWS resources, verifying their configuration and state. It provides a CLI for scaf… | 80 | 1173 | active |
| madsim-rs/madsim MadSim is a Rust async runtime similar to tokio that enables deterministic simulation testing for distributed systems. It mocks I/O interfa… | 59 | 1173 | active |
| test-zeus-ai/testzeus-hercules Hercules is an open-source AI testing agent that turns Gherkin feature files into fully automated end-to-end tests covering UI, API, securi… | 80 | 1172 | active |
| libcheck/check Check is a unit testing framework for C with a simple interface for defining tests. Tests run in a separate address space, allowing it to c… | 61 | 1172 | stable |
| instancio/instancio Instancio is a Java library that automatically creates fully-populated objects with random data for unit tests, including nested objects, c… | 94 | 1168 | active |
| scalatest/scalatest ScalaTest is a free, open-source testing toolkit for Scala and Java programmers, widely used in the Scala ecosystem for over 17 years. It p… | 76 | 1168 | stable |
| theory/pgtap pgTAP is a unit testing framework for PostgreSQL written in PL/pgSQL and PL/SQL. It provides a comprehensive set of TAP-emitting assertion … | 67 | 1166 | active |
| microsoft/WinAppDriver Windows Application Driver is a service that enables Selenium-like UI test automation for Windows applications, including UWP, WinForms, WP… | 26 | 4053 | maintenance |
| adobe/S3Mock S3Mock is a lightweight server that implements a subset of the Amazon S3 API for local integration testing, removing the need for real AWS … | 97 | 1163 | active |
| taverntesting/tavern Tavern is a pytest plugin, command-line tool, and Python library for automated API testing using a concise YAML-based syntax. It supports t… | 75 | 1162 | active |
| help-me-mom/ng-mocks ng-mocks is an Angular testing library that mocks components, directives, pipes, modules, services, and tokens while reducing TestBed boile… | 100 | 1159 | active |
| vuejs/test-utils The official component testing utility library for Vue 3, providing APIs to mount, interact with, and assert against Vue components in test… | 98 | 1159 | stable |
| goccy/bigquery-emulator A BigQuery emulator server implemented in Go that runs a BigQuery-compatible API locally without needing a cloud project or credentials. It… | 87 | 1154 | active |
| kahlan/kahlan Kahlan is a full-featured Unit and BDD test framework for PHP using a describe-it syntax similar to RSpec/JSpec. It includes built-in stubb… | 95 | 1146 | active |
| diffblue/cbmc CBMC (C Bounded Model Checker) is a formal verification tool for C and C++ programs that explores all possible execution paths on bounded i… | 93 | 1146 | active |
| GregFinzer/Compare-Net-Objects A .NET library that performs deep comparison of any two objects using reflection and reports the differences between them. It supports exte… | 33 | 1146 | active |
| chaxiu/munk-ai Munk AI (the open-source Munk Test CLI) is a local-first, self-improving AI testing engine that turns natural-language intent into product-… | 78 | 1145 | active |
| lambci/lambci LambCI is a serverless continuous integration system built on AWS Lambda that runs tests when code is pushed or pull requests are opened on… | 32 | 3962 | maintenance |
| maxbrunsfeld/counterfeiter counterfeiter is a Go code generation tool that creates self-contained, type-safe fake implementations (test doubles) of interfaces. It int… | 94 | 1143 | active |
| AwesomeAssertions/AwesomeAssertions AwesomeAssertions is a community-controlled fork of FluentAssertions, providing an extensive set of fluent extension methods for writing TD… | 85 | 1143 | active |
| SIPp SIPp is a free, open-source SIP (Session Initiation Protocol) protocol testing tool written in C++. It can generate SIP traffic to test, be… | 93 | 1141 | active |
| AWS Lambda Runtime Interface A lightweight web-server proxy for AWS Lambda's Runtime and Extensions APIs that lets developers locally test Lambda functions packaged as … | 91 | 1140 | active |
| dwyl/aws-sdk-mock A Node.js library that mocks AWS SDK (v2) services and methods using Sinon.js, primarily for unit testing AWS Lambda functions. It lets dev… | 67 | 1128 | active |
| oclint/oclint OCLint is a static source code analysis tool for C, C++, and Objective-C that inspects the abstract syntax tree to find bugs, unused code, … | 58 | 3891 | maintenance |
| palkan/isolator Isolator is a Ruby gem that detects non-atomic interactions—such as HTTP calls or background job enqueues—made inside database transactions… | 65 | 1123 | active |
| PyCQA/flake8-bugbear flake8-bugbear is a plugin for the Flake8 linter that adds checks for likely bugs and design problems in Python code. It provides opinionat… | 88 | 1119 | active |
| linux-test-project/lcov LCOV is a set of Perl scripts that capture, manipulate, and visualize code coverage data from tools like gcov, llvm-cov, Coverage.py, Cober… | 91 | 1117 | active |
| NickColley/jest-axe jest-axe is a custom Jest matcher wrapping axe-core that lets you assert rendered HTML has no accessibility violations. It runs automated a… | 82 | 1111 | active |
| emil-e/rapidcheck RapidCheck is a C++ framework for property based testing inspired by QuickCheck. It generates random test data to verify stated properties,… | 76 | 1111 | stable |
| wartremover/wartremover WartRemover is a flexible Scala code linting tool implemented as a compiler plugin, with an sbt plugin for easy integration. It flags unsaf… | 66 | 1102 | active |
| SonarOpenCommunity/sonar-cxx A SonarQube community plugin that adds C and C++ support to SonarQube, focusing on integrating existing C++ analysis tools. It parses C/C++… | 82 | 1098 | active |
| GameCI GameCI is a collection of GitHub Actions for automating Unity game project workflows, including license activation, running edit-mode and p… | 32 | 1098 | active |
| MakeAWishFoundation/SwiftyMocky SwiftyMocky is a strongly typed Swift framework that automatically generates mock implementations of protocols using Sourcery code generati… | 23 | 1092 | active |
| chaijs/sinon-chai A Chai plugin that adds custom assertions for the Sinon.JS spy, stub, and mocking framework. It lets you write spy assertions in idiomatic … | 36 | 1089 | stable |
| jonase/eastwood Eastwood is a lint tool for JVM Clojure that inspects namespaces and reports possible bugs. It uses tools.analyzer.jvm for compiler-accurat… | 32 | 1083 | active |
| mochawesome Mochawesome is a custom HTML/CSS reporter plugin for the Mocha.js JavaScript testing framework. It generates a standalone, visually rich HT… | 96 | 1081 | active |
| awslabs/shuttle Shuttle is a Rust library for testing concurrent code using randomized concurrency scheduling techniques with probabilistic bug-finding gua… | 99 | 1076 | active |
| MGdaasLab/WHartTest WHartTest is an AI-driven test automation platform built on Django 5.2 + DRF with a Vue frontend, generating and managing executable test c… | 85 | 1073 | active |
| bytedance/SandboxFusion A secure, self-hosted code sandbox service from ByteDance that runs and judges code generated by LLMs across 20+ programming languages via … | 60 | 1072 | active |
| Shopify/tophat Tophat is a macOS desktop application by Shopify for installing and testing mobile applications on iOS and Android devices with a single cl… | 82 | 1070 | active |
| 100thCoin/AccuracyCoin AccuracyCoin is a NES test ROM that packs 141 hardware accuracy tests onto a single NROM cartridge, targeting an NTSC console with an RP2A0… | 64 | 1070 | active |
| mswjs/data A data querying library for testing JavaScript applications that lets developers define schema-based collections and query them with an ORM… | 96 | 1065 | active |
| r-lib/actions A collection of reusable GitHub Actions for R projects, providing setup of R, dependencies, renv, pandoc, and TinyTeX, plus running R CMD c… | 66 | 1065 | active |
| testing-library/eslint-plugin-testing-library An ESLint plugin that enforces best practices and catches common mistakes when writing tests with Testing Library. It provides lint rules l… | 87 | 1064 | active |
| google/fuzztest FuzzTest is a C++ testing framework for writing fuzz tests, which are property-based tests executed with coverage-guided fuzzing under the … | 85 | 1064 | active |
| rogue-security/rogue Rogue is an open-source AI agent evaluator and red teaming platform that stress-tests agents against business policies and simulated advers… | 72 | 1064 | active |
| fakefs/fakefs FakeFS is a Ruby gem that provides an in-memory fake filesystem, monkey-patching File, FileUtils, Dir, and related classes so tests can exe… | 52 | 1061 | active |
| Behat A PHP library that parses Gherkin feature files (the DSL used by Cucumber-style BDD tools) into structured objects. It supports over 40 nat… | 93 | 1060 | active |
| aligungr/UERANSIM UERANSIM is an open source 5G UE (user equipment) and RAN (gNodeB) simulator implementing 3GPP R15 specifications. It simulates a 5G mobile… | 79 | 1060 | active |
| atlassian/jest-in-case A small Jest utility for generating multiple variations of the same test from a list of test cases. Each case provides named options passed… | 75 | 1059 | stable |
| supabase-community/copycat Copycat is a TypeScript library for generating deterministic fake values, where the same input always maps to the same fake output. It uses… | 23 | 1059 | active |
| rosiejs/rosie Rosie is a JavaScript library for defining factories that build test data objects, inspired by factory_bot (factory_girl). Factories suppor… | 32 | 1057 | stable |
| Microsoft Test Framework (MSTest V2) Microsoft.Testing.Platform (MTP), a lightweight alternative to VSTest, together with the MSTest test framework and adapter for .NET. It let… | 99 | 1056 | active |
| coala coala is a unified command-line interface for linting and automatically fixing code across many programming languages, driven by a single c… | 23 | 3597 | maintenance |
| takahirom/roborazzi Roborazzi is a Kotlin library for JVM-based Android screenshot testing built on Robolectric Native Graphics. It captures UI screenshots dur… | 97 | 1051 | active |
| danielstjules/jsinspect jsinspect is a Node.js CLI tool that detects copy-pasted and structurally similar JavaScript code by comparing ASTs rather than raw tokens.… | 23 | 3579 | maintenance |