Open-source e2e-testing software
341 open-source libraries, tools and applications tagged e2e-testing, ranked by how closely e2e-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.
341 products, primary matches first, then adoption-weighted; health v2 shown.
| Product | Health v2 | Stars | Maturity |
|---|---|---|---|
| tebeka/selenium A Selenium WebDriver client library for the Go programming language, supporting the W3C WebDriver protocol with Firefox/Geckodriver and Chr… | 32 | 2662 | active |
| cashapp/paparazzi Paparazzi is a Kotlin library from Cash App that renders Android views and Jetpack Compose screens as snapshots inside plain JVM tests, wit… | 90 | 2634 | active |
| Testcontainers Testcontainers for Node.js is a TypeScript library that spins up lightweight, throwaway Docker containers of real dependencies like databas… | 98 | 2616 | active |
| linux-test-project/ltp The Linux Test Project is a collection of test suites and tools for validating the reliability, robustness, and stability of the Linux kern… | 91 | 2609 | active |
| paratestphp/paratest ParaTest is a CLI tool that runs PHPUnit test suites in parallel across multiple processes. It requires zero configuration and can combine … | 98 | 2511 | active |
| symfony/phpunit-bridge A Symfony component providing utilities for PHPUnit, most notably management and reporting of user deprecation notices. It also offers Cloc… | 96 | 2463 | stable |
| modernweb-dev/web Modern Web is a collection of guides, tools, and libraries for modern web development, built on web standards with minimal abstraction. Its… | 93 | 2452 | active |
| tapjs Node-tap is a Test-Anything-Protocol (TAP) test framework for JavaScript and TypeScript, providing a test runner CLI, assertion library, sn… | 94 | 2426 | active |
| nvh95/jest-preview Jest Preview is an npm library and CLI that renders the DOM output of Jest tests in a browser so developers can visually debug UI tests ins… | 62 | 2392 | active |
| onsi/gomega Gomega is a matcher/assertion library for Go, best paired with the Ginkgo BDD test framework but usable with standard Go tests. It provides… | 98 | 2356 | stable |
| jest-community/jest-extended jest-extended is a TypeScript library that adds many additional assertion matchers to Jest's expect API, covering arrays, strings, numbers,… | 81 | 2348 | active |
| testing-library/user-event user-event is a companion library for Testing Library that simulates real user interactions with the DOM by dispatching the full sequence o… | 94 | 2331 | active |
| testcontainers/testcontainers-python Testcontainers for Python is a library providing a friendly API to spin up Docker containers (databases, browsers, etc.) as runtime environ… | 89 | 2304 | active |
| Snaipe/Criterion Criterion is a cross-platform unit testing framework for C and C++ that automatically registers tests and provides a xUnit-style structure … | 67 | 2304 | active |
| orchestral/testbench Orchestra Testbench is a Laravel testing helper that lets package developers write feature and integration tests by extending a preconfigur… | 95 | 2243 | active |
| TommyLemon/APIAuto APIAuto is a web-based HTTP API tool combining machine-learning-powered no-code automated testing, code generation with static checks, and … | 80 | 2224 | active |
| Sonic Cloud Real Machine Platform Sonic is an open-source cloud real machine platform for remote control, debugging, and automated testing of mobile devices such as Android,… | 10 | 2209 | active |
| SergeyPirogov/webdriver_manager A Python library that downloads, resolves, caches, and reuses browser driver binaries for Selenium-based browser automation. It removes the… | 89 | 2181 | active |
| smartystreets/goconvey GoConvey is a Go testing tool that integrates with `go test`, offering a BDD-style DSL (Convey/So assertions) plus an auto-updating web UI … | 23 | 8404 | maintenance |
| FitNesse FitNesse is a fully integrated, stand-alone acceptance testing framework combined with a wiki, written in Java. It lets teams collaborative… | 59 | 2149 | stable |
| 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 |
| 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 |
| 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 |
| phpspec phpspec is a SpecBDD (Specification-based Behavior-Driven Development) testing framework for PHP. It guides developers to design and specif… | 88 | 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 |
| 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 |
| 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 |
| 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 |
| 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 |
| 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 |
| AngusKit/AngusTester AngusTester is a self-hosted agile development and testing platform combining project management, functional/API/scenario testing, service … | 65 | 1772 | 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 |
| 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 |
| 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 |
| pytest-dev/pytest-asyncio A pytest plugin that enables testing of asyncio-based Python code by supporting coroutines as test functions. It lets developers write asyn… | 88 | 1664 | stable |
| gjtorikian/html-proofer HTMLProofer is a Ruby tool that validates rendered HTML files, checking for broken internal and external links, missing image alt tags, inv… | 91 | 1643 | active |
| Delta Chat Delta Chat Desktop is the Electron-based desktop client for Delta Chat, a decentralized private messenger that runs on top of email infrast… | 98 | 1620 | active |
| Mink Mink is a PHP library providing an abstraction layer over web browser emulators and drivers (like Goutte, Selenium) for controlling browser… | 68 | 1608 | active |
| bahmutov/start-server-and-test A Node.js CLI utility that starts a server, waits for a given URL to respond, runs a test command, and then shuts the server down. It is de… | 98 | 1583 | active |
| scanapi/scanapi ScanAPI is a Python CLI tool that runs automated integration tests against REST APIs using declarative YAML/JSON specifications. It hits de… | 94 | 1582 | active |
| styled-components A testing utility library for styled-components that improves Jest, Vitest, and Bun snapshot testing by inlining readable CSS rules into sn… | 86 | 1580 | active |
| microsoft/playwright-java Playwright for Java is a library to automate Chromium, Firefox, and WebKit browsers with a single API, built for reliable end-to-end testin… | 94 | 1562 | active |
| google/EarlGrey EarlGrey is Google's native iOS UI automation test framework that lets developers write clear, concise UI tests with automatic synchronizat… | 66 | 5699 | maintenance |
| pytest-dev/pytest-django pytest-django is a pytest plugin that lets you test Django projects and applications with pytest instead of Django's manage.py test runner.… | 93 | 1546 | stable |
| Watir Watir is an open-source Ruby library for automating web browsers, built on top of Selenium WebDriver. It drives browsers the way people do—… | 32 | 1546 | active |
| assaf/zombie Zombie.js is a lightweight Node.js framework for testing client-side JavaScript and full-stack web applications in a simulated headless bro… | 10 | 5621 | maintenance |
| opendiffy/diffy Diffy is a differential testing tool that sends identical requests to a candidate service and a reference (primary/secondary) service, then… | 57 | 1531 | active |
| vlucas/frisby Frisby.js is a REST API testing framework built on top of Jest that provides a fluent, promise-based API for testing HTTP endpoints. It inc… | 56 | 1511 | active |
| orlangure/gnomock Gnomock is a Go integration and end-to-end testing toolkit that spins up ephemeral Docker containers for application dependencies with prec… | 54 | 1488 | active |
| robotframework/SeleniumLibrary SeleniumLibrary is a web testing library for Robot Framework that wraps Selenium to enable browser-based test automation with keyword-drive… | 76 | 1474 | active |
| pytest-dev/pytest-bdd pytest-bdd is a pytest plugin that implements a subset of the Gherkin language for behavior-driven development (BDD). It lets you write fea… | 75 | 1466 | active |
| leancodepl/patrol Patrol is a Flutter-first, multiplatform E2E UI testing framework that extends Flutter's integration_test with native platform interactions… | 94 | 1448 | active |
| boost-ext/ut UT (μt) is a C++20 micro unit testing framework distributed as a single header or C++20 module. It provides a macro-free, DSL-style API for… | 74 | 1445 | active |
| stevepryde/thirtyfour Thirtyfour is a Selenium/WebDriver client library for Rust for automated browser and website UI testing. It supports the W3C WebDriver prot… | 100 | 1439 | active |
| chaijs/chai-as-promised Chai as Promised is a Chai plugin that adds fluent assertions about promises, such as `.should.eventually.equal(...)` and `.should.be.rejec… | 67 | 1417 | stable |
| kolodny/safetest Safetest is a TypeScript UI testing library that combines Playwright with Jest/Vitest for end-to-end and component testing of web applicati… | 21 | 1400 | active |
| rubycdp/cuprite Cuprite is a pure Ruby headless Chrome/Chromium driver for Capybara that communicates directly via the Chrome DevTools Protocol through Fer… | 83 | 1397 | active |
| airtap/airtap Airtap is a command-line tool for running TAP-producing JavaScript unit tests (e.g. with tape) across many browsers, locally or in the clou… | 26 | 1381 | active |
| puppeteer/replay A TypeScript library providing an API to replay and stringify user flow recordings created with Chrome DevTools Recorder. It includes a CLI… | 90 | 1378 | active |
| Endava/cats CATS (Contract API Testing and Security) is a REST API fuzzer and negative testing tool for OpenAPI endpoints. It automatically generates, … | 92 | 1374 | active |
| kubeshop/tracetest Tracetest is an open-source trace-based testing tool that builds integration and end-to-end tests on top of OpenTelemetry distributed trace… | 30 | 1329 | active |
| reg-viz/reg-suit reg-suit is a command-line tool for visual regression testing that compares current screenshots against previous snapshots and generates HT… | 76 | 1297 | active |
| GoogleChromeLabs/chrome-for-testing Chrome for Testing is a Google-maintained distribution of versioned Chrome, ChromeDriver, and chrome-headless-shell binaries for automated … | 75 | 1297 | active |
| ReactiveCircus/android-emulator-runner A GitHub Action that installs, configures, and runs hardware-accelerated Android Emulators on GitHub Actions Linux and macOS virtual machin… | 82 | 1295 | active |
| Appium The official Java language binding for writing Appium automated tests, conforming to the W3C WebDriver Protocol. It integrates with Maven o… | 81 | 1282 | active |
| bug0inc/passmark Passmark is an open-source TypeScript library that extends Playwright to run end-to-end browser regression tests written in plain English. … | 58 | 1280 | active |
| kiwitcms/Kiwi Kiwi TCMS is an open source test case management system for organizing manual and automated testing, featuring test plans, test runs, bug t… | 95 | 1278 | active |
| open-source-labs/Spearmint Spearmint is an open-source Electron desktop application that generates Jest test code through an accessibility-first graphical interface. … | 62 | 1277 | active |
| Kspider Kspider is a self-hosted visual web scraping platform written in Java where users define crawler workflows as flowcharts without writing ba… | 15 | 1265 | active |
| GdUnit4 GdUnit4 is an embedded unit testing framework for the Godot 4 game engine, supporting tests written in both GDScript and C#. It integrates … | 99 | 1264 | 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 |
| 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 |
| 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 |
| 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 |
| 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 (… | 75 | 1217 | 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 |
| 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 |
| 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 |
| 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 |
| 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… | 81 | 1172 | 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 |
| 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 |
| 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 | 1160 | stable |
| 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 |
| 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 |
| 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 |
| 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 |
| pa11y/pa11y-dashboard Pa11y Dashboard is a self-hosted Node.js web interface for the Pa11y accessibility reporter that automatically tests web pages for accessib… | 74 | 1090 | 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 |
| 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 | 1061 | active |