30 open-source projects similar to testing-library/user-event, ranked by shared indexed features. Tags may describe platforms or build tools rather than the same primary purpose. Check each project’s use case, license, and deployment requirements before treating it as a replacement.
Enzyme is a testing utility for React components designed to verify their output and behavior in a test environment. It serves as a test harness for UI components, providing tools to render visual elements, manage state transitions, and simulate synthetic events. The library distinguishes itself through multiple rendering modes, including a shallow rendering engine for isolated unit testing and full DOM rendering for testing deep integration. It employs an adapter-based integration system to maintain compatibility across different versions of the underlying framework. The toolkit covers a br
techxuexi-js is a browser-based task automator and JavaScript DOM interaction script. It functions as a userscript for browser extensions to automate daily learning tasks and progress tracking on a specific educational web platform. The tool fulfills daily activity quotas by simulating user clicks and page navigation through the document object model. It bypasses manual interaction requirements to complete required courses and milestones automatically. The system utilizes state polling, event simulation, and timer-based sequence execution to manage page interactions. It handles navigation vi
This project is a testing framework designed for React Native applications, providing a suite of tools to render components in a controlled memory environment. It enables developers to verify the behavior and structure of mobile interfaces by simulating user interactions and monitoring component lifecycle transitions. By isolating components from the rest of the application, it ensures that tests remain stable and independent. The framework distinguishes itself through an accessibility-first approach, prioritizing user-facing attributes like roles, labels, and text content when querying the c
Vue Test Utils is a testing library designed for the Vue framework that provides a suite of tools for mounting, interacting with, and asserting the state and output of user interface components. It functions as a JavaScript unit testing tool, enabling developers to verify component logic, rendered structure, and dynamic behavior within an automated test environment. The library distinguishes itself through its ability to isolate components during testing, allowing for shallow rendering that replaces child components with stubs to prevent external dependencies from influencing results. It prov
Maestro is a declarative mobile and web UI automation framework designed for end-to-end testing. It operates by querying the native accessibility tree of an application, allowing for black-box testing without requiring source code instrumentation or platform-specific dependencies. The framework distinguishes itself through a unified command syntax that abstracts interactions across Android, iOS, and web environments. It features a dynamic synchronization engine that automatically pauses test execution to account for non-deterministic animations and network-dependent content loading, ensuring
rspec-rails is a testing framework that integrates RSpec with Ruby on Rails to provide behavior-driven development tools. It serves as a suite for defining application behavior through a conversational syntax, providing a specialized toolkit for creating behavioral specifications for models, controllers, and views. The project distinguishes itself through automated test generation, providing a command-line interface to create boilerplate specification files for Rails components such as models, controllers, and background jobs. It further differentiates its capabilities with a comprehensive mo
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
Tape is a JavaScript testing framework and assertion library that serves as a test runner for Node.js and browser environments. It implements the Test Anything Protocol to provide a standardized, machine-readable format for test results. The project functions as a cross-environment test harness, allowing the same test suites to be executed across both server-side and client-side environments while maintaining a consistent output protocol. Its capabilities include validating value equality and truthiness, verifying exception handling, and coordinating asynchronous workflows. The framework als
Jasmine is a JavaScript testing framework and test runner designed for behavior-driven development. It provides a comprehensive toolset for writing and executing descriptive test suites that verify code behavior in both web browsers and Node.js environments. The framework is distinguished by its integrated mocking library, which allows for dependency isolation through spies and stubs, as well as the ability to simulate time and timing functions to test asynchronous logic synchronously. It also includes a mechanism to enforce test uniqueness, preventing duplicate names for tests and suites. I
Codeception is a full-stack testing framework for PHP applications that provides a unified interface for unit, functional, and acceptance testing. It serves as a tool for automating real desktop and mobile browsers via the WebDriver protocol and acts as a client for testing REST and SOAP APIs. The framework is distinguished by its support for Behavior-Driven Development, allowing users to write human-readable test specifications in Gherkin language to align technical tests with business requirements. It implements actor-based action mapping to connect these natural language steps to executabl
EarlGrey is an iOS UI automation test framework that enables writing and running automated tests simulating real user interactions. It provides a synchronized test execution engine that automatically waits for animations, network requests, and run-loop states to complete before performing test actions or assertions, producing stable and repeatable results across test runs. The framework distinguishes itself through out-of-process interaction handling, managing system alerts and app switching during tests, and a pixel-level visibility checker that verifies UI elements are actually visible and
React Testing Library is a testing framework for verifying React components by interacting with rendered output instead of internal implementation details. It functions as a DOM testing utility and a frontend integration testing tool that mounts components into a virtual document object model for execution within Node.js environments. The library utilizes an accessibility-first query engine to locate user interface elements via ARIA roles and labels. This approach ensures web accessibility standards are met by mirroring how users perceive the interface rather than relying on implementation-sp
Enzyme is a JavaScript component testing utility and test suite used to verify the behavior and rendered output of user interface components. It provides tools for simulating user interactions, updating component properties, and asserting that the resulting interface state matches expected outcomes. The project utilizes a pluggable adapter system to connect different user interface frameworks, allowing for consistent testing patterns across various libraries and versions. This architecture enables the verification of components across multiple UI library versions and different test runners.
Universe is a training and evaluation platform that transforms websites, games, and software into standardized environments for general intelligence agents. It functions as a reinforcement learning wrapper and remote environment orchestrator, providing a consistent interface to wrap diverse software for AI agent interaction. The platform distinguishes itself through a visual observation interface that streams real-time pixel data and transmits keyboard and mouse events to simulate human interaction. It utilizes a bi-directional communication protocol to deliver reward signals and performance
Agent-S is a multimodal AI agent and LLM desktop automation framework designed to control operating systems through graphical user interface interactions. It functions as a computer use interface, utilizing vision-language grounding to translate natural language goals into precise screen coordinates and system actions. The project differentiates itself by combining structured accessibility tree inspection with vision-based element localization. It manages cross-application workflows by mapping conceptual descriptions to physical pixels and simulating low-level keyboard and mouse events to mov
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
QUnit is a JavaScript unit testing framework designed to verify code behavior using assertions and lifecycle hooks across browsers and server runtimes. It functions as a browser-based test runner with an HTML interface for reporting results, an asynchronous test orchestrator for coordinating callbacks, and a utility for isolating and verifying document object model changes. The framework distinguishes itself through specialized DOM testing capabilities, allowing for the isolation and resetting of the document object model between tests to ensure atomicity. It also features a system for detect
Campus-imaotai is an automated liquor reservation tool designed to schedule and execute daily booking requests for high-demand products. It functions as an app interaction simulator that mimics human activities and network requests to meet application eligibility requirements. The system employs a dockerized task orchestrator for deployment and uses an automated notification gateway to provide real-time alerts on the success or failure of purchase attempts. It utilizes a multi-account orchestration system to manage various user profiles and uses store optimization logic to select target endpo
k6 is a developer-centric load testing suite and command-line load generator designed for network performance validation. It functions as a JavaScript load testing tool that utilizes a Go-based runtime engine to simulate concurrent user traffic and validate API responses across HTTP, gRPC, and WebSockets. The project distinguishes itself by using code rather than a graphical interface to define workload scenarios and performance thresholds. It features a pluggable protocol architecture and an extension ecosystem that allows for the addition of custom protocols and specialized testing capabili
KIF is a functional testing framework and UI automation tool for iOS. It enables the simulation of user interactions and the verification of application states by driving interface components through their defined accessibility attributes. The framework utilizes an actor-pattern action wrapper to group reusable interaction sequences and allows the definition of custom, high-level test steps through a method-extension action library. It performs in-process interface driving, interacting with the application directly within the same process to execute actions and validate view states. The tool
This project is a component testing framework and utility designed for testing React components. It functions as a DOM testing library that allows for the verification of rendered output and component functionality without accessing internal implementation details. The library focuses on behavior driven development by simulating user interactions within a virtual DOM environment. It utilizes implementation-agnostic querying to locate elements via accessible roles and labels, ensuring that the interface is verified from the perspective of the user. The toolset covers frontend integration test
Pyppeteer is a Python library for controlling Chromium-based browsers using the Chrome DevTools Protocol. It functions as a headless browser automation tool, allowing for the programmatic navigation of web pages and the extraction of data from dynamic websites. The project provides low-level browser control through direct communication with the Chrome DevTools Protocol, enabling the interception and modification of network traffic. It differentiates itself by offering specialized performance profiling capabilities, including the measurement of JavaScript and CSS code coverage and the capture
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
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
This project is a suite of automated tools and an LLM code review framework designed for design auditing, security scanning, and AI-driven code analysis. It functions as a developer workflow orchestrator that uses static analysis agents and agent-based workflows to automate pull request analysis and security audits. The system employs a dual-loop agent architecture to coordinate primary analysis and secondary verification, reducing false positives. It distinguishes itself through the use of browser automation to perform live UI component testing and verify frontend changes against accessibili
Detox is a gray-box end-to-end testing framework designed for mobile applications. It automates user interactions and verifies interface states by synchronizing test execution with the internal readiness of the application, ensuring that scripts wait for background tasks, network requests, and animations to complete before proceeding. The framework distinguishes itself through native-side binary instrumentation, which allows it to monitor the application message queue and query the native view hierarchy in real time. By interacting directly with the application process, it avoids reliance on
Awesome-adb is a curated collection of resources and utilities designed for interacting with Android devices via the command line. It serves as a comprehensive toolkit for developers and system administrators to facilitate the development, testing, and maintenance lifecycle of mobile applications and system software. The project provides a centralized reference for leveraging the Android Debug Bridge to perform complex tasks, including mobile automation, system-level debugging, and device fleet management. It covers a wide range of capabilities such as simulating user input for stress testing
The Haskell Language Server is an implementation of the Language Server Protocol that provides real-time diagnostics, code navigation, and refactoring support for Haskell projects. It functions as a backend service that enables advanced editing capabilities within standard text editors by facilitating communication between the development environment and the Haskell compiler. The project distinguishes itself through a modular, plugin-based architecture that allows for the integration of independent components for specific language features. It leverages the host compiler as a library to perfo
This project provides a collection of instructional guides and tutorials for Android app development, native mobile application creation, and computer science education. It focuses on building native applications through step-by-step implementation, covering the development of user interfaces and the integration of system hardware and permissions. The material extends into broader technical domains, including the study of fundamental data structures and algorithms for technical interview preparation. It also covers cybersecurity fundamentals, such as identifying web vulnerabilities and implem