571 Repos
Bibliotheken für Unit-, Property-based- und automatisierte Tests.
Explore 571 awesome GitHub repositories matching part of an awesome list · Test-Frameworks. Refine with filters or upvote what's useful.
Dieses Projekt ist ein zentrales, frei zugängliches Repository, das als strukturiertes Verzeichnis für technische Bildung und berufliche Entwicklung dient. Es fungiert als Community-gesteuerte Wissensdatenbank, die hochwertige Lernmaterialien aggregiert, um den weltweiten Zugang zu Informatik- und Software-Engineering-Ressourcen zu unterstützen. Die Plattform zeichnet sich durch ein kollaboratives Governance-Modell aus, das Peer-Review-Workflows für alle Ergänzungen und Änderungen an Inhalten nutzt. Durch die Nutzung strukturierter Textdateien und dezentraler Versionskontrolle pflegt das Repository einen durchsuchbaren, menschenlesbaren Index, der kontinuierlich aktualisiert und durch Community-gesteuerte Metadaten-Tagging kategorisiert wird. Die Sammlung umfasst eine breite Palette an Bildungsressourcen, darunter umfassende Fachliteratur, strukturierte Online-Kurse und interaktive Programmier-Tutorials. Nutzer können auf Ressourcen für den Kompetenzerwerb, die Vorbereitung auf Vorstellungsgespräche und schnelle Syntax-Referenzen zugreifen, wobei die Inhalte nach Programmiersprache, technischem Bereich und menschlicher Sprache organisiert sind, um das selbstgesteuerte Lernen zu erleichtern.
A massive directory of free programming books and learning resources.
Dieses Projekt ist eine umfassende Bildungsreihe, die ein tiefes technisches Verständnis der Programmiersprache JavaScript vermitteln soll. Es fungiert als mehrbändiger Lehrplan, der Entwickler durch die Kernmechanismen, Ausführungsmodelle und zugrunde liegenden Spezifikationen führt, die definieren, wie die Sprache auf fundamentaler Ebene funktioniert. Der Lehrplan zeichnet sich dadurch aus, dass er sich auf die interne Architektur der Sprache konzentriert und nicht auf die oberflächliche Syntax. Er bietet eine rigorose Analyse komplexer Themen wie lexikalischer Scope, zustandsbasierte Kapselung mittels Closures, prototypbasierte Vererbung und die Mechanik des Event-Loops. Indem die Reihe untersucht, wie die Engine Ausführungskontexte und Variablenumgebungen verwaltet, ermöglicht sie Entwicklern, die Nuancen dynamischer Typsysteme und impliziter Typumwandlung mit größerer Vorhersehbarkeit zu handhaben. Das Material deckt das gesamte Spektrum der Sprachgrundlagen ab, einschließlich objektorientierter Muster, asynchroner Ausführungsabläufe und der Grammatikregeln, die die Datentransformation steuern. Diese Ressourcen sind so strukturiert, dass sie Praktikern den Übergang von der grundlegenden Nutzung zur Beherrschung der Sprachinterna erleichtern und letztendlich die Entwicklung wartbarer und effizienterer Software unterstützen. Der Inhalt ist als Reihe technischer Handbücher und konzeptioneller Leitfäden für das systematische Studium verfügbar.
Deep-dive book series on core JavaScript language mechanisms.
Puppeteer is a JavaScript library for programmatically controlling Chrome and Firefox through the Chrome DevTools Protocol or the WebDriver BiDi protocol. It launches and manages browser instances—typically without a visible user interface—to automate interactions with web pages, enabling navigation, clicking, typing, and data extraction entirely through code. The library distinguishes itself through deep integration with the Chromium embedding layer, allowing fine-grained process configuration with custom flags, permissions, and sandbox policies. It maintains multiple concurrent command stre
Headless Chrome browser automation for testing and scraping.
Puppeteer is a browser automation library that provides a programmatic interface for controlling web browsers to execute tasks, simulate user interactions, and perform end-to-end testing. It functions as a headless browser controller, managing browser lifecycles, isolated session contexts, and remote connections to facilitate stable, automated web-based workflows. The library distinguishes itself through its deep integration with the Chrome DevTools Protocol, utilizing a bidirectional message bus to execute commands and receive real-time event notifications. It supports advanced automation pa
Headless Chrome browser automation.
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
Cross-browser automation framework for modern web applications.
json-server is a development toolset used to simulate a full REST API from a JSON file. It functions as a customizable mock API server that allows for the simulation of CRUD operations and resource relationships without the need to write backend code. The project enables rapid prototyping by generating a fake backend that persists data changes back to a local JSON file. It distinguishes itself by providing a static asset file server to deliver local documents, images, and stylesheets alongside the mock API endpoints. The server includes capabilities for data querying, such as parameter-based
Zero-code REST API mock server.
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
Fast and reliable E2E testing.
Jest is a JavaScript testing framework that integrates a test runner, an assertion library, and a snapshot testing tool. Its primary purpose is to provide a comprehensive environment for writing and running automated JavaScript tests to verify software correctness. The framework is distinguished by its snapshot testing capabilities, which capture the state of large objects or rendered components to detect regressions over time. It also features a reactive watch mode that monitors file changes and automatically executes only the tests related to modified code. The project covers a broad range
Zero-config unit testing framework.
Dieses Projekt ist ein umfassendes C++-Unit-Testing-Framework, das entwickelt wurde, um Codelogik zu verifizieren und Regressionen durch eine Suite von Assertions-Makros, Test-Fixtures und Ausführungs-Runnern zu identifizieren. Es automatisiert die Entdeckung und Registrierung von Testfällen während der statischen Initialisierung, was es Entwicklern ermöglicht, isolierte Testumgebungen zu definieren, die wiederholbare und vorhersehbare Bedingungen für jede Ausführung gewährleisten. Das Framework zeichnet sich durch eine ausgefeilte Mock-Objekt-Bibliothek aus, die die Simulation von Komponenten und die Durchsetzung strenger Interaktionsanforderungen ermöglicht. Durch das Abfangen virtueller Methodenaufrufe erlaubt es eine präzise Validierung von Argumentmustern, Aufrufzahlen und Rückgabeverhalten. Dieser erwartungsgesteuerte Ansatz wird durch eine deklarative Assertions-Sprache und eine datengesteuerte Engine ergänzt, die gemeinsam die komplexe Validierung von Datenstrukturen, Containerinhalten und Funktionsergebnissen über verschiedene Eingabekonfigurationen hinweg unterstützen. Über die Kernverifizierung hinaus bietet das Projekt umfangreiche Lebenszyklus-Überwachungs- und Event-Listener-Schnittstellen, die eine Integration mit externen Berichts- und Protokollierungssystemen ermöglichen. Es umfasst eine robuste Unterstützung für parametrisierte Testgenerierung, benutzerdefinierte Mock-Erweiterungen und die Verifizierung von Prozessbeendigungen, wodurch sichergestellt wird, dass Entwickler diverse Testszenarien und einzigartige Validierungsanforderungen handhaben können. Das Framework integriert sich direkt in Standard-Build-Systeme, verwaltet Projektabhängigkeiten und Compiler-Konfigurationen, um die Konsistenz über Entwicklungsumgebungen hinweg aufrechtzuerhalten. Es wird als quellbasierte Bibliothek vertrieben, die Standard-Konfigurationsdateien verwendet, um das Einrichten der Umgebung und die Ausführung der Test-Binärdateien zu automatisieren.
Provides a C++ test 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
Standardized browser automation framework for cross-browser testing.
k6 is a performance testing framework used to measure the scalability and stability of network services and APIs. It functions as a JavaScript load testing tool that uses a Go engine to simulate concurrent user traffic. The tool enables the enforcement of service level objectives by comparing response time percentiles against quantitative performance thresholds. It also operates as a performance regression tool for continuous integration pipelines and a browser performance testing tool that executes scripts within a bundled headless browser instance. Its capabilities cover workload scenario
JS-scriptable load-testing tool for CI/CD pipelines.
PhantomJS is a scriptable, headless browser engine based on WebKit that provides a programmatic interface for automating web page interactions. It operates without a graphical user interface, allowing for the execution of JavaScript to navigate pages, manipulate the document object model, and perform functional testing of web applications. The tool distinguishes itself by providing low-level control over the browser rendering lifecycle and network stack. It enables real-time interception and modification of network traffic, alongside the ability to generate visual snapshots and document expor
Scriptable Headless WebKit.
Locust is a distributed performance testing framework that allows users to define complex system stress scenarios using standard Python code. By modeling concurrent users as classes with weighted tasks and lifecycle hooks, it enables the simulation of realistic user behavior across large-scale environments. The tool functions as a scalable load generator capable of orchestrating traffic across multiple worker nodes to measure system stability and responsiveness under heavy, real-world conditions. The framework is distinguished by its protocol-agnostic architecture, which supports diverse comm
Scalable user load testing tool.
Testify is a comprehensive testing toolkit for Go that provides a suite of assertion libraries and mocking frameworks to validate code behavior. It enables developers to write automated tests by comparing actual results against expected outcomes, ensuring that functional requirements are met throughout the development process. The project distinguishes itself through its flexible failure propagation, which allows tests to either halt execution immediately upon a failed requirement or return boolean results for conditional logic. It includes deep-equality object comparison and JSON normalizati
Extension for the standard testing package.
Mocha is a JavaScript test runner and framework designed to execute automated test suites across multiple runtimes, including Node.js and web browser environments. It functions as a pluggable testing tool for organizing and validating unit, integration, and functional tests. The project distinguishes itself through a plugin-based extension interface that allows for custom functionality and reporting. It supports a multi-runtime approach, enabling the same test suite to run in different JavaScript environments, and includes a watch mode that monitors the filesystem to trigger automatic test re
Flexible testing framework for Node and browsers.
Ava is a concurrent test runner for Node.js that executes test files in parallel using worker thread isolation to prevent global state leakage. It functions as a TAP-compliant tool, exporting results via the Test Anything Protocol for integration with external reporting systems. The framework distinguishes itself through a focus on execution speed and clarity, utilizing worker threads to run multiple test files simultaneously across CPU cores. It includes stack trace simplification to filter out internal framework noise and a value comparison utility that provides syntax-highlighted diffs for
Futuristic test runner for JavaScript.
Ava is a test runner for JavaScript and TypeScript designed to execute test suites with a focus on concurrency and isolation. It serves as a concurrent test executor that runs test files in parallel across multiple processes to reduce total runtime and prevent state leakage between suites. The project features a built-in snapshot testing framework that saves large data structures to disk and compares subsequent executions to detect regressions via diffs. It is also compatible with the Test Anything Protocol, allowing it to export results for use with external reporting tools. Its capability
Futuristic, high-performance test runner.
Catch is a C++ testing toolset providing frameworks for unit testing, behavior-driven development, and micro-benchmarking. It serves as a utility for software quality assurance and test-driven development, allowing developers to validate code correctness and measure the execution time of small code fragments. The project features a header-only distribution, enabling integration by including a single file. It utilizes expression-decomposition assertions to provide detailed failure messages and employs a self-registering test discovery system that uses macros to register test cases without manu
Unit testing framework.
Catch2 is a comprehensive framework for C++ software validation, providing an environment for unit testing, integration verification, and performance analysis. It enables developers to define and execute automated test suites and micro-benchmarks directly within their applications. The framework is distinguished by its header-only distribution, which allows for integration into existing build systems without requiring complex external dependencies. It utilizes a hierarchical section-based execution model that supports behavior-driven testing, allowing for shared setup and teardown logic acros
Unit testing framework.
Nightmare is an Electron-based browser automation library and headless browser controller. It provides the infrastructure to programmatically navigate web pages, interact with DOM elements, and execute JavaScript within a background browser instance. The project distinguishes itself by integrating a full Chromium instance within an Electron shell, allowing for the management of browser sessions, network proxy settings, and persistent storage partitions. It enables the capture of page states as PNG screenshots, PDF documents, or HTML files. The tool covers a broad range of capabilities includ
High-level browser automation library for end-to-end testing.