104 Repos
Frameworks and utilities for verifying application code.
Explore 104 awesome GitHub repositories matching part of an awesome list · Testing. Refine with filters or upvote what's useful.
Playwright is a comprehensive browser automation framework designed for end-to-end testing and web workflow automation. It provides a unified API to drive web applications across multiple browser engines, enabling developers to simulate complex user interactions, perform web scraping, and validate application behavior in consistent, isolated environments. The framework distinguishes itself through a web-first testing paradigm that prioritizes stability and resilience. By utilizing an auto-waiting actionability engine and accessibility-tree-based locators, it eliminates common sources of test
Automation framework for cross-browser testing.
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
End-to-end testing framework for browser-based applications.
Jest is a JavaScript testing framework designed for writing and running automated test suites to verify the correctness of JavaScript and TypeScript code. It functions as a comprehensive toolset that integrates a test runner, a mocking and spying library, a snapshot testing tool, and a code coverage tool. The framework distinguishes itself through snapshot testing, which records the serialized state of data structures to detect regressions in future executions. It also includes a mocking and spying library for simulating external dependencies and tracking function calls to isolate code during
Comprehensive JavaScript testing framework.
Selenium is a comprehensive browser automation framework that provides a standardized interface for controlling web browsers to perform automated tasks, user interactions, and data extraction. It functions as a cross-browser testing tool, enabling developers to execute identical automation scripts across various browser engines and operating systems to ensure consistent application behavior. By implementing the WebDriver protocol, it maps high-level automation commands to browser-specific drivers using a standardized HTTP-based wire protocol. The project distinguishes itself through its distr
WebDriver bindings.
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
Utilities for testing components from a user-centric perspective.
Faker is a synthetic data generation library used to create realistic but fake information, such as names, addresses, and phone numbers, for software testing and database population. It functions as a tool for producing synthetic test data to fill development databases with records that simulate production environments. The library provides localized data generation, allowing synthetic information to be customized for specific geographic regions and language formats. It also includes a mechanism for unique value enforcement to prevent the repetition of generated data by tracking and rejecting
Generates fake data.
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
Acceptance testing for web applications.
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
Browser simulation for web testing.
Bogus is a fake data generator for .NET applications, including C#, F#, and VB.NET. It provides a deterministic mock data engine and an object configuration mapper to produce realistic profiles, addresses, and financial records. The library differentiates itself through a localization data provider that generates region-specific identifiers across various international languages and locales. It ensures reproducibility across executions by using seed values to control the sequence of generated data. The project covers wide-ranging data synthesis capabilities, including the generation of netwo
Fake data generator.
django-debug-toolbar is a developer tool that provides a browser-based set of diagnostic panels for inspecting HTTP requests and responses within a Django web application. It serves as a server-side diagnostics tool and web framework development suite, allowing developers to profile and inspect request-response cycles. The tool focuses on Django application troubleshooting, database optimization, and general web development. It enables the analysis of SQL queries and database performance to identify slow calls and reduce the number of requests per page. The software includes capabilities for
Request and response debugging panels.
Moq4 is a .NET mocking framework used to create simulated implementations of interfaces and abstract classes. It serves as a test double generator and behavior verification tool, allowing developers to isolate code during unit testing by replacing real dependencies with programmed mocks. The framework enables the definition of expected method behaviors and return values to control the execution flow of tests. It provides specialized capabilities for simulating methods that use output or reference parameters and mechanisms to monitor and trigger events on simulated objects. The library includ
Mocking framework.
VCR is a Ruby library that records and replays HTTP interactions during test runs, storing them in serialized cassette files. It captures real HTTP requests and responses, then serves those recorded responses instead of making actual network calls, enabling fast and deterministic test suites that work offline. The library provides configurable request matching, allowing comparisons based on method, URI, host, path, body, or headers to find the correct recorded response. It supports scheduled cassette re-recording to automatically refresh stored interactions at a configurable interval, keeping
Records and replays HTTP interactions.
rspec-rails ist ein Test-Framework, das RSpec mit Ruby on Rails integriert, um Tools für Behavior-Driven Development (BDD) bereitzustellen. Es dient als Suite zur Definition von Anwendungsverhalten durch eine konversationelle Syntax und bietet ein spezialisiertes Toolkit zur Erstellung von Verhaltensspezifikationen für Modelle, Controller und Views. Das Projekt zeichnet sich durch automatisierte Testgenerierung aus und bietet ein CLI zur Erstellung von Boilerplate-Spezifikationsdateien für Rails-Komponenten wie Modelle, Controller und Hintergrund-Jobs. Es differenziert sich zudem durch eine umfassende Mocking- und Stubbing-Bibliothek sowie eine Web-App-Integrationssuite, die darauf ausgelegt ist, vollständige Request-Zyklen und Browser-Interaktionen zu simulieren. Das Framework deckt ein breites Spektrum an Integrationstests ab, einschließlich der Überprüfung von Routen-Mappings, der Validierung von Mailer-Inhalten und der Ausführung von Hintergrund-Jobs. Es bietet eine Vielzahl von Test-Assertions zur Validierung von Objektzuständen, HTTP-Response-Status und Datenbankabfrageergebnissen sowie Tools zur Verwaltung von Test-Doubles mittels Spies und Stubs. Das System enthält ein CLI-Executable für die Testausführung und einen persistenten Konfigurationsspeicher zur Standardisierung von Einstellungen über Umgebungen hinweg.
Testing framework for Rails.
SimpleCov ist ein Ruby-Code-Coverage-Tool und eine Analyse-Engine, die dazu verwendet wird, nachzuverfolgen, welche Zeilen, Zweige und Methoden von Code während Tests ausgeführt werden. Es fungiert als Coverage-Threshold-Enforcer und Test-Suite-Aggregator und zeichnet Ausführungsdaten auf, um ungetestete Bereiche einer Anwendung zu identifizieren. Das Tool zeichnet sich durch die Fähigkeit aus, Coverage-Ergebnisse von parallelen Worker-Prozessen und Subprozessen in einem einzigen, vereinheitlichten Bericht zusammenzuführen. Es unterstützt den Baseline-Vergleich, um Coverage-Regressionen zu erkennen, und kann Daten aus Code sammeln, der über dynamische Evaluierungsmethoden ausgeführt wurde, wie sie in Templating-Engines verwendet werden. Seine breiteren Fähigkeiten umfassen die Generierung von Berichten in mehreren Formaten, Quellgruppierung und Dateifilterung unter Verwendung regulärer Ausdrücke. Das System bietet zudem eine Kommandozeilenschnittstelle zur Anzeige von Statistiken und zur Auflistung nicht abgedeckter Dateien.
Code coverage analysis tool.
xunit is a unit testing framework for the .NET ecosystem designed to execute isolated code units and report failures across multiple platforms. It functions as a data-driven test runner and a native AOT test suite, capable of verifying compiled binaries and standalone executables after ahead-of-time compilation. The framework utilizes build-time source generators for test discovery to define test cases without relying on runtime reflection. It also features an extensible reporting system where custom logic can be linked into test assemblies to output results in specialized formats. The proje
Unit testing tool.
WebMock ist eine Ruby-Bibliothek für HTTP-Request-Stubbing, Antwort-Simulation und Netzwerk-Interzeption. Sie dient als Test-Assertion-Framework zur Verifizierung ausgehenden HTTP-Verkehrs und als Netzwerk-Interzeptionsschicht, die externe Verbindungen blockiert, um versehentliche Anfragen während des Testens zu verhindern. Das Projekt bietet Funktionen für die dynamische Antwortgenerierung und die Sequenzierung verschiedener Rückgabewerte für wiederholte Anfragen an denselben Endpunkt. Es unterstützt die Simulation von Netzwerkfehlern, wie Timeouts oder Exceptions, und ermöglicht das Replay von Antworten mithilfe von rohen HTTP-Daten, die aus lokalen Dateien geladen werden. Die Bibliothek deckt ein breites Spektrum an API-Simulations- und Netzwerkkontrollfunktionen ab, einschließlich Request-Matching basierend auf URIs und Headern, Aufzeichnung von Request-Signaturen und Filterung ausgehenden Datenverkehrs. Sie enthält zudem Monitoring-Utilities, um Netzwerkereignisse über benutzerdefinierte Callbacks abzufangen und zu protokollieren.
HTTP request stubbing.
A very extensive set of extension methods that allow you to more naturally specify the expected outcome of a TDD or BDD-style unit tests. Targets .NET Framework 4.7, as well as .NET Core 2.1, .NET Core 3.0, .NET 6, .NET Standard 2.0 and 2.1. Supports the unit test frameworks MSTest2, NUnit3, XUnit2, MSpec, and NSpec3.
Fluent assertion library for tests.
Simple one-liner tests for common Rails functionality
RSpec matchers for Rails functionality.
A gem providing "time travel", "time freezing", and "time acceleration" capabilities, making it simple to test time-dependent code. It provides a unified method to mock Time.now, Date.today, and DateTime.now in a single call.
Time manipulation for testing.
minitest provides a complete suite of testing facilities supporting TDD, BDD, and benchmarking.
Complete testing suite for TDD and BDD.