awesome-repositories.com
Blog
awesome-repositories.com

Descubre los mejores repositorios open-source con nuestra búsqueda potenciada por IA.

ExplorarBúsquedas curadasAlternativas open-sourceSoftware autohospedableBlogMapa del sitio
ProyectoAcerca deCómo clasificamosPrensaServidor MCP
Aviso legalPrivacidadTérminos
© 2026 Bringes Technology SRL·VAT RO45896025·hello@awesome-repositories.com
·

14 repositorios

Awesome GitHub RepositoriesBrowser Driver Abstractions

Interface layers that decouple test logic from specific browser engines using a common command interface.

Distinct from Hardware Abstraction Layers: Specifically targets browser automation drivers, whereas candidates focus on image, database, or hardware drivers.

Explore 14 awesome GitHub repositories matching software engineering & architecture · Browser Driver Abstractions. Refine with filters or upvote what's useful.

Awesome Browser Driver Abstractions GitHub Repositories

Encuentra los mejores repositorios con IA.Buscaremos los repositorios que mejor coincidan usando IA.
  • teamcapybara/capybaraAvatar de teamcapybara

    teamcapybara/capybara

    10,166Ver en GitHub↗

    Capybara is a browser automation library and web application acceptance test framework used to simulate user behavior and verify functional requirements. It serves as a cross-browser testing tool and headless browser orchestrator, allowing for the execution of test suites across multiple browser engines. The project provides a driver-agnostic interaction layer that abstracts different browser engines, enabling users to switch between headless and full browser drivers. It supports multi-user session simulation by maintaining independent browser states and cookies to test interactions between i

    Implements an interface layer that decouples test logic from specific browser engines via a common command interface.

    Ruby
    Ver en GitHub↗10,166
  • jnicklas/capybaraAvatar de jnicklas

    jnicklas/capybara

    10,166Ver en GitHub↗

    Capybara is a browser automation testing library and framework for web application acceptance testing. It provides a high-level API for automating browser navigation and element interaction to validate user-facing features. The project features a cross-browser driver interface that allows switching between headless and full browser environments without modifying the underlying test code. This abstraction enables the simulation of complex web workflows across different browser drivers and environments. The suite covers user interaction simulation, including form filling, click events, and bro

    Decouples test logic from specific browser engines through a common interface for translating commands.

    Ruby
    Ver en GitHub↗10,166
  • devexpress/testcafeAvatar de DevExpress

    DevExpress/testcafe

    9,904Ver en GitHub↗

    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

    Provides a unified API to translate test actions into commands for different browser engines.

    JavaScript
    Ver en GitHub↗9,904
  • angular/protractorAvatar de angular

    angular/protractor

    8,694Ver en GitHub↗

    Protractor is a WebDriver-based end-to-end testing framework and browser automation tool. It serves as a frontend integration test suite used to verify web application flows by simulating user behavior and executing JavaScript within a browser. The framework is specifically designed for testing Angular applications, providing specialized locators and synchronization tools that align with the framework lifecycle. It distinguishes itself through automatic test step synchronization, which pauses execution until pending page tasks are completed to ensure stable browser execution. The tool covers

    Serializes test commands into network requests that browser drivers interpret as native browser actions.

    JavaScriptangularend-to-endjavascript
    Ver en GitHub↗8,694
  • superradcompany/microsandboxAvatar de superradcompany

    superradcompany/microsandbox

    6,570Ver en GitHub↗

    Microsandbox is a runtime for creating and managing lightweight, hardware-isolated virtual machines — called sandboxes — that boot directly from standard OCI container images. Each sandbox runs as its own host process with a separate kernel, filesystem, and network stack, providing process-per-sandbox isolation. The project includes a command-line tool and multi-language SDKs (Rust, TypeScript, Python, Go) for programmatic lifecycle control, and it communicates with sandbox agents over Unix sockets using a CBOR-encoded protocol. What distinguishes Microsandbox is its combination of host-manag

    Selects a backend profile to route sandbox execution to local or remote runtime.

    Rust
    Ver en GitHub↗6,570
  • lavague-ai/lavagueAvatar de lavague-ai

    lavague-ai/LaVague

    6,374Ver en GitHub↗

    LaVague is an LLM web agent framework and large action model designed to translate natural language instructions into executable browser automation scripts. It functions as a multi-modal orchestrator that reasons over web page states and HTML content to automate multi-step tasks via a Selenium-based automation engine. The framework features a modular model provider layer, allowing users to swap between different language and vision models from providers such as Anthropic, Gemini, and Azure OpenAI. It employs a multi-modal world model to process screenshots and HTML structures, utilizing retri

    Implements an abstraction layer that allows the framework to support multiple browser backends like Selenium and Playwright.

    Pythonaibrowserlarge-action-model
    Ver en GitHub↗6,374
  • maiot-io/zenmlAvatar de maiot-io

    maiot-io/zenml

    5,452Ver en GitHub↗

    ZenML is an extensible machine learning orchestration framework designed to manage the end-to-end lifecycle of data pipelines and AI agent workflows. It functions as a durable orchestrator that executes machine learning tasks as directed acyclic graphs, ensuring that every step is containerized for consistent performance across local, cloud, and hybrid infrastructure. By decoupling pipeline code from underlying compute and storage backends, the platform allows developers to define infrastructure-agnostic stacks that remain portable across diverse environments. The project distinguishes itself

    Allows switching between local and remote server instances to manage pipeline execution context.

    Python
    Ver en GitHub↗5,452
  • zenml-io/zenmlAvatar de zenml-io

    zenml-io/zenml

    5,451Ver en GitHub↗

    ZenML is an orchestration platform designed for building, deploying, and monitoring reproducible machine learning pipelines and agentic workflows. It provides a unified framework that manages the entire lifecycle of machine learning assets, from data processing and model training to the deployment of persistent inference services. By decoupling pipeline logic from underlying compute and storage, the platform enables teams to transition workflows seamlessly from local development environments to production-grade cloud infrastructure. The platform distinguishes itself through a service-oriented

    Connects the client to a local server instance to isolate development work or reconnects to a remote server for collaborative execution.

    Pythonagentopsagentsai
    Ver en GitHub↗5,451
  • codeceptjs/codeceptjsAvatar de codeceptjs

    codeceptjs/CodeceptJS

    4,225Ver en GitHub↗

    CodeceptJS es un framework de pruebas end-to-end en NodeJS diseñado para automatizar pruebas de aceptación en aplicaciones web, móviles y de escritorio. Sirve como un automatizador de pruebas multiplataforma y una herramienta de desarrollo guiado por comportamiento (BDD) que mapea archivos de características a definiciones de pasos para alinear las pruebas técnicas con los requisitos de negocio. El proyecto se distingue por sus capacidades de mantenimiento de pruebas impulsadas por IA, utilizando aprendizaje automático para identificar y reparar automáticamente selectores de elementos rotos cuando cambian las interfaces de usuario. También cuenta con una capa de abstracción agnóstica al controlador que permite ejecutar los mismos conjuntos de pruebas en diferentes motores de navegador, sistemas operativos y plataformas móviles a través de Appium. El framework cubre una amplia superficie de capacidades, incluyendo automatización de navegadores y móviles, simulación (mocking) y pruebas de API, y pruebas de regresión visual. Implementa patrones arquitectónicos como el Page Object Model y la inyección de dependencias, a la vez que proporciona herramientas de observabilidad como grabaciones de pantalla con subtítulos de acciones y análisis automatizado de fallos. El proyecto proporciona una interfaz de línea de comandos para la creación de estructuras de prueba (scaffolding) y depuración interactiva.

    Decouples test scripts from specific browser or mobile engines via an abstraction layer for cross-platform execution.

    JavaScript
    Ver en GitHub↗4,225
  • codeception/codeceptjsAvatar de codeception

    codeception/codeceptjs

    4,223Ver en GitHub↗

    CodeceptJS es un framework de pruebas end-to-end en Node.js utilizado para escribir pruebas de aceptación y funcionales para aplicaciones web y móviles. Funciona como un conjunto de pruebas automatizadas de navegador y un motor de automatización entre navegadores que permite a los usuarios simular interacciones del usuario final y verificar el contenido de la página utilizando un lenguaje de dominio específico basado en JavaScript. El framework implementa un enfoque de desarrollo guiado por comportamiento (BDD), permitiendo la creación de pruebas basadas en escenarios que describen el comportamiento de la aplicación en un formato legible por humanos. Utiliza el patrón Page Object Model para encapsular elementos de la interfaz de usuario y la lógica en objetos reutilizables, simplificando el mantenimiento de las pruebas. El conjunto de herramientas cubre una amplia gama de capacidades, incluyendo simulación de flujos de trabajo end-to-end en diferentes navegadores y plataformas móviles, ejecución de pruebas en paralelo y gestión del ciclo de vida de las pruebas. Incluye utilidades de depuración como shells interactivos e inteligencia artificial para la reparación de pruebas (test healing), así como informes visuales con paneles interactivos y artefactos integrados. Se proporciona una interfaz de línea de comandos para acelerar el desarrollo mediante la generación de plantillas de prueba y definiciones de tipo.

    Wraps multiple browser and mobile automation engines behind a unified API to decouple test logic from specific drivers.

    JavaScript
    Ver en GitHub↗4,223
  • behat/behatAvatar de Behat

    Behat/Behat

    3,959Ver en GitHub↗

    Behat es un framework de desarrollo guiado por comportamiento (BDD) y herramienta de automatización de pruebas para PHP. Funciona como un ejecutor de pruebas Gherkin que mapea archivos de características en lenguaje natural a métodos PHP ejecutables para verificar que la implementación del software se alinea con los requisitos de negocio. El framework permite la definición del comportamiento de la aplicación utilizando un formato estructurado y legible por humanos basado en historias de usuario, soportando palabras clave localizadas para partes interesadas que no hablan inglés. Se distingue por una capa de simulación de navegador basada en drivers para la verificación de la interfaz de usuario e integraciones especializadas para el kernel de Symfony y flujos de trabajo de Drupal. El conjunto de herramientas cubre una amplia gama de capacidades, incluyendo pruebas de regresión automatizadas, automatización de navegadores web y manejo complejo de datos mediante transformaciones de tablas. Proporciona una interfaz de línea de comandos para la ejecución de pruebas, hooks de ciclo de vida para configuración y limpieza, y un sistema de plugins para extender la funcionalidad principal con herramientas de terceros. Los resultados de la ejecución están disponibles en múltiples formatos, incluyendo texto legible por humanos, JSON y JUnit XML.

    Abstracts web interactions through a driver layer to verify UI behavior across different browser engines.

    PHPbddbehatbehavior-driven-development
    Ver en GitHub↗3,959
  • microsoft/playwright-cliAvatar de microsoft

    microsoft/playwright-cli

    3,871Ver en GitHub↗

    Playwright-cli is a command line interface for executing web tasks and automating browser interactions using the Playwright framework. It serves as a browser binary manager for downloading and installing specific browser engines and their required system dependencies, as well as a tool for running automated test suites across multiple engines to verify application behavior. The utility functions as a browser session controller, managing browser profiles and persistent storage states via the command line. It enables the execution of automation suites across different browser engines and config

    Uses a unified API to translate high-level automation commands into browser-specific instructions for Chromium, Firefox, and WebKit.

    TypeScriptplaywright
    Ver en GitHub↗3,871
  • getgauge/taikoAvatar de getgauge

    getgauge/taiko

    3,663Ver en GitHub↗

    Taiko is a browser automation framework and web end-to-end testing library used to perform programmatic user actions and verify application behavior. It functions as a headless browser testing tool capable of simulating real interactions and asserting page states in Chromium and Firefox. The project includes a browser interaction recorder that captures live actions and exports them as executable JavaScript automation scripts. It also serves as a web accessibility auditor, analyzing pages to detect accessibility violations and ensure compliance with inclusive design standards. The framework c

    Offers a unified API abstraction layer to control multiple browser engines including Chromium and Firefox.

    JavaScriptautomationheadlessheadless-browsers
    Ver en GitHub↗3,663
  • google-gemini/computer-use-previewAvatar de google-gemini

    google-gemini/computer-use-preview

    2,815Ver en GitHub↗

    This project is a browser automation system that connects Google's Gemini API to a web browser, enabling an AI agent to perform tasks on a user's behalf by interpreting natural language instructions. At its core, it operates through a continuous screenshot-based action loop, where the agent captures the browser's current state, sends the image to the Gemini model, and executes the model's returned commands to click, type, and navigate. The system distinguishes itself through a dual browser backend abstraction, supporting both local Playwright-controlled browsers and remote Browserbase cloud i

    Ships a dual browser backend abstraction that switches between local Playwright and remote Browserbase instances at runtime.

    Python
    Ver en GitHub↗2,815
  1. Home
  2. Software Engineering & Architecture
  3. Browser Driver Abstractions

Explorar subetiquetas

  • Local and Remote Backend Switching1 sub-etiquetaAbstractions that allow switching between local and remote browser instances through a unified interface at runtime. **Distinct from Browser Driver Abstractions:** Distinct from Browser Driver Abstractions: specifically enables runtime switching between local Playwright and remote Browserbase backends, not just decoupling test logic from browser engines.
  • Protocol Message BusesSystems that serialize high-level commands into protocol-specific network requests for browser drivers. **Distinct from Browser Driver Abstractions:** Focuses on the serialization and transport of commands via WebDriver, not just the abstraction layer.