For an open source alternative to BrowserStack, the strongest matches are cypress-io/cypress (Cypress is an automated end-to-end and component testing framework), seleniumbase/seleniumbase (SeleniumBase is a Python end-to-end testing and browser automation) and codeception/codeceptjs (CodeceptJS is a Node). devexpress/testcafe and nightwatchjs/nightwatch round out the shortlist. Each is ranked by relevance to your query, popularity and recent activity.
We curate open-source GitHub repositories matching “open source alternatives to browserstack”. Results are ranked by relevance to your query — pick filters below to narrow, or refine with AI.
Cypress is a browser-based testing framework designed for writing and running automated tests directly inside the browser. It serves as an end-to-end testing framework, a frontend component testing tool, and a web application test runner. The project also functions as a headless browser automation tool and a network traffic interceptor. The system differentiates itself by executing test code within the same browser process as the application, allowing for direct access to the DOM. It includes a network traffic interception system to stub and manipulate browser requests, as well as a graphical
Cypress is an automated end-to-end and component testing framework that provides headless execution and test reporting, though it focuses on developer-centric web testing rather than a self-hosted cloud device farm.
SeleniumBase is a Python-based framework designed for end-to-end web application testing and automated web scraping. It provides a unified interface for browser orchestration, managing browser lifecycles, and executing complex interaction sequences across multiple browser vendors and operating systems. The framework simplifies the development of automation workflows by handling driver provisioning, element synchronization, and project scaffolding. The project distinguishes itself through specialized stealth configurations that modify browser fingerprints to bypass anti-bot detection mechanism
SeleniumBase is a Python end-to-end testing and browser automation framework that supports parallel test execution and reporting, though it operates as a code-first library rather than a self-hosted cloud platform.
CodeceptJS is a Node.js end-to-end testing framework used for writing acceptance and functional tests for web and mobile applications. It functions as an automated browser testing suite and cross-browser automation engine that allows users to simulate end-user interactions and verify page content using a JavaScript-based domain-specific language. The framework implements a behavior-driven development approach, enabling the creation of scenario-driven tests that describe application behavior in a human-readable format. It utilizes the page object model to encapsulate UI elements and logic into
CodeceptJS is a Node.js end-to-end testing framework that supports automated browser testing, parallel execution, and HTML dashboard reports, though it operates as a test framework rather than a complete cloud device farm.
TestCafe is a Node.js end-to-end web testing framework used to automate browser tests with JavaScript or TypeScript. It serves as a cross-browser testing tool and a command-line execution engine designed for integration into continuous integration pipelines. The framework supports behavior-driven development by mapping human-readable Gherkin syntax to automation logic. It also includes an integrated web accessibility auditor to identify violations within web applications. The toolset covers a broad range of automation capabilities, including parallel test execution across multiple browser in
TestCafe is an end-to-end web testing framework that supports automated browser testing and parallel test execution, though it is primarily a code-first test runner rather than a self-hosted cloud testing platform.
Nightwatch is a Node.js test automation tool and W3C WebDriver test framework designed for executing functional test suites and verifying system behavior. It provides a suite of utilities for web browser automation, native mobile application testing, and REST API validation. The project includes specialized tools for visual regression testing, which compares current screenshots against baseline images to detect unexpected changes. It also features an accessibility auditing tool to check user interface elements against established standards for compliance. The framework covers a broad range o
Nightwatch is an end-to-end JavaScript test automation framework that supports browser automation and visual regression testing, though it functions as a testing library rather than a complete self-hosted cloud testing platform.
CodeceptJS is a NodeJS end-to-end testing framework designed for automating acceptance tests across web, mobile, and desktop applications using a unified API. It serves as a cross-platform test automator and a behavior-driven development tool that maps human-readable feature files to technical step definitions. The framework features AI-powered test maintenance that uses machine learning to automatically identify and repair broken element selectors. It includes capabilities for autonomous test generation and a server that allows external agents to control tests and debug browser sessions in r
CodeceptJS is a JavaScript-based end-to-end testing framework that supports automated browser testing, parallel execution, and HTML dashboard reports, serving as a solid tool for automated web testing though lacking a built-in self-hosted cloud device farm.
Huxley is a visual regression testing tool and browser automation framework designed to detect pixel-level interface changes. It functions as an automated browser screenshotter that records user interactions and replays them to verify that web interfaces remain visually consistent across updates. The system generates visual diffs by comparing current screenshots against stored baseline images to highlight specific pixels that have changed. It includes mechanisms to manage these baselines, allowing users to update reference screenshots when interface changes are intentional. The framework cov
Huxley is a visual regression testing tool and browser automation framework, but it is focused purely on pixel-level screenshot comparisons rather than providing a comprehensive cross-browser testing platform.
This library provides a framework for controlling headless Chrome or Chromium instances through the Chrome DevTools Protocol. It functions as a controller for orchestrating browser lifecycles, enabling developers to automate interactions, extract data, and manage browser processes programmatically within Rust applications. The project distinguishes itself by providing a synchronous interface that wraps asynchronous browser operations, simplifying the control flow for linear automation scripts. It maintains process isolation by spawning independent browser instances as child processes, ensurin
This repository provides a Rust library for controlling headless Chrome via the DevTools Protocol, which serves as a building block for browser automation rather than a complete self-hostable cross-browser testing platform.
CasperJS is a scripting utility and testing framework for automating web scenarios via headless browsers. It enables the execution of navigation steps and form inputs to automate complex user scenarios, extract web data, and validate the state of remote pages. The project provides specific tooling for PhantomJS and SlimerJS, allowing users to write programmable sequences for web navigation and data extraction. It includes capabilities for capturing visual snapshots of full pages or specific elements to perform user interface regression testing. The framework covers broad automation areas inc
CasperJS is a scripting and testing utility for headless browser automation that supports visual snapshot capture, but it is a library-style framework built on older engines rather than a modern, self-hostable cross-browser testing platform with a cloud device farm.
Undetected-chromedriver is a framework for automated browser navigation designed to bypass anti-bot security measures. It functions by patching browser drivers at the binary level to obscure automation signals, allowing scripts to interact with protected websites without being flagged or blocked by security services. The project distinguishes itself through its ability to maintain stealth during automated sessions, including those executed in headless mode. It achieves this by injecting custom configurations to mimic human user behavior and by hooking into low-level browser debugging protocol
This repository is a specialized anti-detection driver patch for Selenium rather than a self-hostable cross-browser testing platform with a dashboard and device farm.
BackstopJS is an automated screenshot testing framework and visual regression testing tool designed to identify pixel-level discrepancies between different versions of a web application. It functions as a browser automation testing suite that captures visual snapshots of a user interface and compares them against stored reference images to detect unintended changes. The project utilizes a containerized testing environment via Docker to ensure consistent browser rendering and prevent cross-platform visual discrepancies. It includes a web UI diffing interface that allows users to analyze visual
BackstopJS is a visual regression testing and screenshot comparison tool, but it does not provide a full cross-browser cloud testing platform or manual testing capabilities.
Chromeless is a serverless deployment of Chrome and a programmable interface for automating headless browser interactions. It functions as a web page rendering engine and browser orchestrator, enabling the execution of automation tasks within an AWS Lambda environment. The project specializes in managing browser state, cookies, and viewport settings across remote Chrome instances. It provides tools for generating screenshots, PDFs, and raw text exports from rendered web pages. The system supports dynamic web interaction, including form filling, element clicking, and the execution of custom J
This serverless headless browser automation tool provides a programmable interface for remote Chrome instances, but it is a code-level orchestration utility rather than a complete cross-browser testing platform.
| Repository | Stars | Language | License | Last push |
|---|---|---|---|---|
| cypress-io/cypress | 50.1K | TypeScript | MIT | |
| seleniumbase/seleniumbase | 12.4K | Python | mit | |
| codeception/codeceptjs | 4.2K | JavaScript | MIT | |
| devexpress/testcafe | 9.9K | JavaScript | MIT | |
| nightwatchjs/nightwatch | 11.9K | JavaScript | MIT | |
| codeceptjs/codeceptjs | 4.2K | JavaScript | MIT | |
| facebookarchive/huxley | 4K | Python | Apache-2.0 | |
| rust-headless-chrome/rust-headless-chrome | 2.9K | Rust | MIT | |
| casperjs/casperjs | 7.2K | JavaScript | MIT | |
| ultrafunkamsterdam/undetected-chromedriver | 12.4K | Python | gpl-3.0 |