14 dépôts
Automated utilities that compare visual output against expected designs to detect rendering errors or UI regressions.
Explore 14 awesome GitHub repositories matching testing & quality assurance · Visual 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
Captures visual state as in-memory buffers to facilitate pixel-diffing or programmatic image analysis without disk I/O.
Avalonia is a cross-platform desktop framework that enables the creation of native-feeling applications for Windows, macOS, and Linux from a single codebase. It functions as a declarative UI toolkit, allowing developers to define complex visual hierarchies and interface structures using a markup-based syntax that maps directly to underlying object properties. By utilizing the Model-View-ViewModel architectural pattern, the framework facilitates a clean separation between application logic and user interface layout, which simplifies unit testing and component maintenance. The framework disting
Compares captured bitmaps of rendered frames against baselines to identify layout or styling changes.
This application is a specialized web browser designed to streamline responsive design testing by rendering multiple viewport configurations simultaneously. It functions as a cross-platform testing suite that allows developers to preview and interact with web content across diverse mobile, tablet, and desktop device profiles within a single workspace. The tool distinguishes itself by synchronizing user interactions and application state across all active browser instances. When a user navigates, scrolls, or clicks in one view, these events are broadcast to every other open viewport to ensure
Captures and saves screenshots across multiple device profiles to track design changes and layout status.
This project is a comprehensive knowledge base and educational resource for JavaScript developers, focused on establishing industry-standard methodologies for automated software testing. It provides a structured collection of design patterns and actionable guidelines designed to improve code reliability, maintainability, and overall software quality across the development lifecycle. The repository distinguishes itself by offering a granular, pattern-based approach to testing that spans unit, integration, and end-to-end verification. It emphasizes specific architectural strategies such as comp
Utilizes automated tools to detect visual regressions and layout issues.
ImageMagick is a comprehensive software suite for the creation, editing, composition, and conversion of digital images. It functions as both a command-line utility for batch processing and automation, and as a programming library that allows developers to integrate advanced image manipulation capabilities into external applications. The project is distinguished by its modular architecture, which supports hundreds of image formats through a pluggable coder system and external delegate libraries. It is designed for high-performance environments, utilizing memory-mapped pixel caching, stream-ori
Calculates and visualizes the mathematical or visual variance between two images to identify changes or errors.
PyAutoGUI is a Python GUI automation library and desktop automation framework. It provides a set of tools for programmatically controlling the mouse and keyboard to automate user interface interactions across different operating systems. The project functions as a cross-platform input simulator and computer vision screen scanner. It enables the simulation of keystrokes and cursor movements to perform repetitive tasks and utilizes screen analysis to locate specific images or pixel colors on the display. Its capability surface includes mouse and keyboard input simulation, screen image capture,
Implements automated visual scanning of the screen to verify that the user interface is displaying correctly.
Pest is a testing framework for PHP that provides a comprehensive suite for executing unit, integration, and end-to-end tests. It functions as an automated testing tool that prioritizes developer experience and readability through a concise, expressive syntax for defining test suites. By wrapping an established testing foundation, it maintains compatibility with existing ecosystem tools while offering a specialized interface for writing and organizing automated tests. The framework distinguishes itself through integrated support for parallel test execution, which distributes suites across mul
Generates and compares pixel-level representations of rendered interfaces against baseline images to detect visual regressions.
Karate est un framework de test d'API Gherkin et un orchestrateur de tests JVM conçu pour la validation d'API, l'automatisation de workflows et l'automatisation de navigateurs. Il fournit un environnement unifié pour exécuter une logique scriptable sur la Java Virtual Machine avec un traitement concurrent thread-safe. Le projet inclut un serveur mock HTTP intégré pour simuler le comportement d'une API backend en fournissant des réponses dynamiques aux requêtes interceptées. Il propose également un outil de test de régression visuelle qui détecte les changements d'interface en comparant des captures d'écran avec des images de référence via une analyse de correspondance de pixels. Le système prend en charge les tests de charge d'API en faisant évoluer les tests fonctionnels en tests de performance pour identifier les goulots d'étranglement. Les capacités supplémentaires incluent les tests UI end-to-end via l'automatisation des interactions avec le navigateur et la validation de structures de données pour les réponses JSON et XML.
Allows adjusting mismatch thresholds and defining ignore-regions via a browser interface to refine visual test results.
WinMerge is a visual file comparison and merge tool used to identify and synchronize differences between text files, folders, and images. It functions as a diff and patch generator, a visual folder synchronizer, and a hex binary comparator for non-text data. The tool provides specialized comparison modes for diverse content types, including side-by-side webpage rendering for HTML and resource trees, tabular data analysis for delimited files in a grid view, and visual image comparison using overlays and animations. It also supports comparing the contents of compressed archives without manual e
Detects pixel-level changes between images using overlays and blinking animations.
BackstopJS est un framework de test de capture d'écran automatisé et un outil de test de régression visuelle conçu pour identifier les écarts au niveau du pixel entre différentes versions d'une application web. Il fonctionne comme une suite de tests d'automatisation de navigateur qui capture des instantanés visuels d'une interface utilisateur et les compare à des images de référence stockées pour détecter les changements involontaires. Le projet utilise un environnement de test conteneurisé via Docker pour garantir un rendu de navigateur cohérent et éviter les écarts visuels multi-plateformes. Il inclut une interface de diffing web qui permet aux utilisateurs d'analyser les différences visuelles et d'approuver les captures d'écran de référence mises à jour via un tableau de bord interactif. Le framework fournit des capacités d'automatisation des interactions avec le navigateur, y compris la possibilité de simuler des séquences utilisateur, de préparer des états de page et de contrôler le timing de capture. Il prend en charge la capture ciblée d'éléments DOM spécifiques, le masquage d'éléments basé sur des sélecteurs CSS pour éviter les faux positifs, et des seuils de différence de pixels configurables pour déterminer les échecs de test. L'outil génère des rapports HTML statiques et exporte les résultats dans des formats adaptés à l'intégration avec des systèmes d'intégration continue.
Utilizes a containerized setup to execute visual tests that compare rendered output against expected designs.
gm is a JavaScript image processing library and Node.js manipulation tool that serves as a programmatic wrapper for the GraphicsMagick engine. It translates JavaScript method calls into shell commands to automate the resizing, cropping, and transformation of images. The library provides an interface to execute specific GraphicsMagick operations while allowing raw command passthrough for custom arguments or engine features not covered by the standard API. Its capabilities cover geometric manipulation, color and tone adjustment, and image quality optimization. It includes tools for image compo
Provides utilities for analyzing and diffing visual assets to detect pixel-level changes.
pixelmatch is a JavaScript image comparison library and pixel-level difference detector. It identifies mismatched pixels between image data arrays and quantifies the differences based on a configurable sensitivity threshold. The tool generates visual difference maps that highlight specific pixel changes for manual review. It includes a command-line interface for comparing image files and exporting the resulting difference maps to the file system. The project provides capabilities for automated image analysis and visual regression testing, utilizing anti-aliasing heuristic filtering to ignore
Provides utilities for analyzing and diffing visual assets to detect pixel-level changes between versions.
WebDriverAgent est un agent de contrôle sur l'appareil et un serveur d'automatisation qui implémente le protocole WebDriver pour les appareils iOS. Il sert de pont permettant le contrôle à distance des applications et du système d'exploitation sur des appareils iOS physiques et des simulateurs pour les tests automatisés. Le projet fournit un framework de test d'interface utilisateur capable d'interagir avec les éléments à l'écran, de capturer des captures d'écran et de simuler des gestes utilisateur. Il traduit les commandes distantes en appels système natifs pour interagir avec la hiérarchie d'accessibilité d'iOS. Le serveur couvre un large éventail de capacités d'orchestration d'appareils et d'automatisation d'interface utilisateur, incluant la gestion du cycle de vie des applications, le contrôle de l'orientation de l'appareil et la navigation sur l'écran d'accueil. Il gère également des tâches au niveau du système telles que la simulation d'authentification biométrique, la gestion des alertes système et l'interrogation des propriétés des éléments. La connectivité est établie via un serveur REST s'exécutant sur l'appareil cible, prenant en charge la communication via tunnel USB ou connexions sans fil.
Captures the current display frame buffer and encodes it as an image for remote visual verification.
jest-image-snapshot est une bibliothèque de test d'images et un moteur de comparaison visuelle pour Node.js, conçu pour les tests de régression visuelle avec Jest. Il fournit un matcher personnalisé pour comparer les images actuelles aux snapshots de référence afin d'identifier les différences au niveau des pixels. L'outil génère des diffs d'images qui mettent en évidence les divergences spécifiques entre les snapshots de référence et les snapshots reçus. Il inclut des mécanismes pour mettre à jour les images de référence lorsque les changements sont approuvés et permet d'ajuster la sensibilité via le nombre de pixels, des seuils de pourcentage ou le flou pour ignorer le bruit. La bibliothèque couvre la gestion des snapshots d'images, incluant la configuration de stockage personnalisée pour les chemins de répertoires et des utilitaires pour identifier et supprimer les snapshots obsolètes qui ne sont plus associés à des tests actifs. Elle prend en charge des algorithmes de comparaison pixel par pixel et de similarité structurelle pour vérifier la cohérence de l'interface utilisateur.
Provides interfaces for adjusting mismatch thresholds and applying blur to ignore visual noise.