← Back to Awesome

Sections

Visual Regression Testing

GitHub repository ↗ synced 2026/8/9

Awesome Visual Regression Testing Awesome

Curated list of awesome visual regression testing resources.

Regression testing is a type of software testing which verifies that software which was previously developed and tested still performs the same way after it was changed or interfaced with other software. The purpose of regression testing is to ensure that changes to the software have not introduced new faults.

Foreword

This is intended to be an incomplete list of resources about visual regression testing. It is not tailored to a specific area or role (Developer/QA/UX-Designer). Note that this is for all areas of regression software testing after the code in question is written. For a awesome list on general software testing see e.g. awesome-testing.

Finally, I'm sure everyone who reads this list has one thing they want to add. Please read the How to Contribute page and Feel free to add to the list!!. If you think this is helpful Please give a Star ⭐️.

General information

Survey of screenshot-based CSS testing tools
Wikipedia: Regression testing

Browser automation

Cypress.io

An automation framework that runs in-browser.

Selenium

Browser automation framework and ecosystem.

SlimerJS

Scriptable browser like PhantomJS, based on Firefox.

Webdriver.io

Node.js bindings implementation for the W3C WebDriver protocol.

Tools and frameworks (a-z↓)

AET

Scalable testing tool providing visual regression testing, accessibility and performance validation, markup analysis and more.

AyeSpy

44 image comparisons in 90 seconds.

BackstopJS

Config-driven automated screenshot test framework.

basset

Open source platform for generating and reviewing visual differences. Supports multiple browsers, integrations for github and slack.

BitDive

BitDive is a zero-code regression testing tool for Java/Kotlin applications. It captures real runtime behavior (methods, SQL, HTTP) and enables Live Context Replay with automatic mocking to detect semantic drift between versions.

BFFless

Self-hosted platform for hosting and viewing visual regression screenshots from CI/CD pipelines with GitHub Actions integration.

Chimp

Develop acceptance tests & end-to-end tests with realtime feedback.

CodeceptJS

Modern Era Acceptance Testing Framework for NodeJS.

Creevey

Cross-browser visual testing with magic. Feature-rich tool with UI Runner, Tests Hot Reloading, Docker and Storybook integration.

CSSCritic

Lightweight CSS regression testing.

Differencify

A library for visual regression testing using [Puppeteer](https://github.com/GoogleChrome/puppeteer).

DiffGoblin Action

GitHub Action that screenshots two URLs and posts a visual diff as a PR comment. Zero config, no external service needed.

ember-visual-test

Simple visual regression testing for [Ember](https://emberjs.com/).

FuncUnit

A functional test suite based on jQuery

Frostbyte Screenshot Action

GitHub Action for automated website screenshots in CI/CD. API-based (no local browser), supports 5 viewports, full-page capture, dark mode.

Galen

Java framework based on [Selenium](https://github.com/SeleniumHQ/selenium).

gatling

Integrated visual RSpec matcher which makes real visual testing easy (Ruby).

grunt-photobox

Plugin to prevent your project of broken layout via screenshot photo sessions of your site.

Happo

Visual diffing in CI for user interfaces.

Hardy

Selenium-driven, cucumber-powered CSS testing.

jest-image-snapshot

Jest matcher that performs image comparisons using [pixelmatch](https://www.npmjs.com/package/pixelmatch)

jest-puppeteer-react

Visual regression testing with Jest and puppeteer for React components

Karma

A test runner by the AngularJS team, that fits all our needs.

Lastest

Visual regression testing platform built on Playwright with screenshot diffing, baseline review, and AI flake triage. Self-hostable via docker-compose or k8s.

Loki

Visual regression testing for Storybook using Chrome in docker et al.

Look-alike

Chrome Extension for taking and comparing screenshots.

Lost Pixel

Holistic visual regression testing for full pages, components (via Storybook and Ladle integration), and custom shots (e.g. via Cypress).

Muppeteer

Visual regression testing framework for Chrome using [Mocha](https://mochajs.org/) and [Puppeteer](https://github.com/GoogleChrome/puppeteer).

Needle

Needle is a tool for testing visuals with Selenium and nose (Python).

Nightmare

High-level browser automation library based on Electron.

Nightwatch

Automated testing and continuous integration framework based on Node.js and using the Webdriver protocol.

OSnap

The speedy and easy to use Snapshot Testing tool for your project (1200 snapshots will run in under 3 minutes).

Playwright

Node library to automate Chromium, Firefox and WebKit with a single API.

Protractor

E2E test framework for Angular apps.

Puppeteer

Headless Google Chrome Node API.

qd_screenshottests

CasperJS-based UI regression and functional testing focused on Drupal 8 sites.

reg-cli

Visual regression test tool which output easy-to-read single file html report.

reg-suit

Visual regression testing suite which compares images, stores snapshots, and notifies the difference to your GitHub repo.

ResembleJS

Analyse and compare images with Javascript and HTML5.

Selenide

Framework powered by Selenium WebDriver for writing easy-to-read and easy-to-maintain automated tests in Java.

Shoov

UI regression and functional testing focused on Drupal 7 sites.

Spectre

Provides image comparison capabilities and an admin interface for managing screenshots.

test-crawler

Visual regression testing, by crawling a website and providing snapshot comparison reports.

TestCafe

Automated browser testing for the modern web development stack.

Touca

Open source continuous regression testing without the hassle of managing snapshot files.

vrtest

JavaScript library for running visual regression tests on your components cross browser via selenium.

wdio-visual-regression

Visual regression tool for webdriver.io

Wendigo

Test-oriented browser automation library based on Puppeteer.

Wraith

Easy to use ruby tool with docker support.

Zombie.js

Insanely fast, headless full-stack testing using Node.js.

Online services (a-z↓)

applitools

Cloud base visual tests.

Argos

The open source visual testing platform for modern engineering teams.

Axcept

Testing for the whole team. Up to 100 tests in parallel. Endpoint Mocking. Code Coverage.

Browser Shots

Screenshots only.

browserling

LIVE interactive cross-browser testing.

BrowserStack

Free for Open Source. Supports [Selenium Webdriver](https://github.com/SeleniumHQ/selenium/tree/master/javascript/node/selenium-webdriver).

BugBug.io

Lightweight test automation tool for web applications. Easy to learn and doesn't require coding. It's free, with unlimited tests. For an additional monthly fee, you also get cloud monitoring and CI/CD integration.

Chromatic

Visual testing and UI review for component libraries. Cloud-based. [Video](https://youtu.be/6KDLJBcutQE)

CrossBrowserTesting

Manual & exploratory testing on 1500+ real browsers and mobile devices.

Diffy

Cloud based visual regression tool that focuses on Drupal and WordPress. Full page screenshots and minimal number of false positives. Just provide URLs of your sites to get started. No coding required.

Fluxguard

Screenshot pixel and DOM change comparisons and regressions.

Ghost Inspector

See [introduction video](https://vimeo.com/ghostinspector/intro).

Happo

Cloud-based screenshot testing service with support for multiple browsers.

HeadSpin

HeadSpin's Regression testing gives you a powerful comparison tool for analysing degradation across new app builds, OS releases, feature additions, locations, and more.

Keploy

Open-source regression testing tool that automatically generates test cases and mocks from real API calls.

LambdaTest

Perform Automated and Live Interactive Cross Browser Testing on 2000+ Real Browsers and Operating Systems Online.

Meticulous.ai

Easily create frontend tests without writing code. Use Meticulous to record workflows on your web app. You can then replay those flows on new frontend code, and create a test by diffing two replays.

Micoo

Open source service for all UI application visual regression solution

PageBolt

Screenshot, video recording, PDF, and page inspection API with device emulation, ad blocking, and cookie banner removal.

percy.io

Continuous visual reviews for web apps.

Pixeleye

Open-source, multi-browser visual review and testing platform with the option to self-host. It has first-class support for Storybook, Cypress, Playwright & Puppeteer.

Preflight: Cypress Recorder

Create AI-powered Cypress Tests/POM models in your browser and automate Email & Visual testing for Cypress.

Preflight

Easiest Visual regression testing and Automated Web Testing tool. (Limited) free use.

Reflect

Visual regression testing and test automation tool.

screener.io

For React, looks open source.

screenster.io

Cloud based automation testing platform for web and mobile UI.

Sherlo

Visual testing platform for React Native Storybook. Captures screenshots on iOS and Android simulators in the cloud and detects visual changes automatically.

TestGrid

Perform End to End test automation be it cross browser testing, mobile app testing, performance testing or API testing on cloud or on-premise.

TestingBot

Provides +3600 browsers to run automated visual tests. Free for Open Source.

Testomat.io Reporter

Allows to collect tests to a Test Case Management System (TCMS) like testomat.io and sync manual and automated tests in one place.

testRigor

E2E functional test automation tool for web, mobile, and desktop tests.

Vidiff

Cloud-based visual regression testing across stages.

Visual Knight

Cloud-based visual testing platform with realtime results for testing tools.

Visual Regression Tracker

Open Source selfhosted service for visual regression testing

VisWiz.io

Flexible visual regression testing service.

Wopee.io

Autonomous visual regression testing platform with AI-powered test agents. Integrates with Playwright, Cypress, and Robot Framework.

  • MyVisReg – Run visual regression tests directly in your browser with no installs or setup.
  • VRTs - Visual Regression Tests – WordPress plugin auto-updating screenshots on content updates, preventing false positives.

Blog posts (a-z↓)

Angela Riggs: Visual Regression Testing with BackstopJS

Tutorial using BackstopJS.

Automated screenshot comparison tests with headless Chrome, Puppeteer and Pixelmatch, in Bitbucket pipeline
Automatic visual diffing with Puppeteer
Chromeless, Chrominator, Chromy, Navalia, Lambdium, GhostJS, AutoGCD

Headless Chrome is shaking up traditional approaches to test automation.

CodeLift: Introduction to Diffy for Visual Regression Testing

Catch visual and functional issues before they reach production.

Everything you need to know about Visual Regression Testing in 2022

Intro to visual regression testing with tools updated as of 2022.

Garris Shipon: Automating CSS Regression Testing

Tutorial using BackstopJS.

Garris Shipon: Visual Regression Testing For Angular Applications

Tutorial using BackstopJS.

Keeping a React Design System consistent: using visual regression testing to save time and headaches

Using percy, and jest puppeteer to visually test a React component library.

Kevin Lamping: The 5 best visual regression testing tools

Compares: Wraith, PhantomCSS, Gemini, WebdriverCSS and Spectre.

Make visual regression testing easier

Introduction to [Differencify](https://github.com/NimaSoroush/differencify) and how to use it.

Pavels Jelisejevs: Visual Regression Testing with PhantomCSS

Introduction to PhantomCSS.

Phillip Gourley: Making visual regression useful

Why you should use BackstopJS.

Poor man's visual regression testing

Improved manual visual regression testing with the PerfectPixel chrome plugin.

theheadless.dev

Blog with practical guides and runnable examples on Playwright and Puppeteer.

UI Visual Regression Testing with Micoo

Introduction about how to do visual regression testing with Micoo service

Visual Regression Test with WebdriverIO & WebdriverCSS

Tutorial using WebdriverIO and WebdriverCSS with Spec Reporter

Visual regression testing for Hugo with Github-CI and BackstopJS

How to automate regression testing for Hugo with BackstopJS

Visual regression testing using Jest, Chromeless and AWS Lambda

Tutorial using Chromeless and jest-image-snapshot.

Visual Regression Testing with Puppeteer & Jest

Tutorial to setup visual testing with Puppeteer, Jest and VisWiz.io.

Slideshows, talks and videos (a-z↓)

CSS Regression Testing with Wraith

Screencast: Basic introduction to wraith, a screenshot comparison tool.

Cypress in 100 Seconds

Introduction video by Fireship.

Look-alike - visual regression testing tool

Demo what the Look-alike Chrome extension is, how it works and how and why it was build.

Screencast on CSS critic - a lightweight testing framework for CSS

How to write your first CSS test with CSS critic, make it pass, break it, and make it pass again.

Screenster Tutorial

Tutorial on how to create visual automated tests with Screenster.

Visual Regression Testing with PhantomCSS

Talk by Jon Bellah on how to use PhantomCSS during wordpress development.

Visual Regression Testing with Shoov

How to setup shoov and get your first test written.

Visual Regression Testing: Sanity Checks With BackstopJS

Screencast with code demo and best practices.

Scaling up your Screenshot Testing, without the Friction

Mobile focussed talk from Droidcon/Fluttercon India. Explains the bottlenecks with scaling up screenshot testing and how to solve them.

  • Visual Regression Testing - from a tool to a process by Nikhil Verma - How the Mobile Web team in Badoo converted and integrated PhantomCSS into their workflow and connected it to their CI process.

Deprecated (a-z↓)

CasperJS

Navigation scripting and testing utility for PhantomJS and SlimerJS. (archived 2018)

Chromeless

Chrome automation made simple. Runs locally or headless on AWS Lambda. (archived 2018)

DalekJS

Automated cross browser testing with JavaScript. No longer maintained since 4 Jun 2017.

dpxdt

End-to-end testing with Python.

Gemini

Feature rich framework with support for [Selenium](https://github.com/SeleniumHQ/selenium) and [CasperJS](https://github.com/casperjs/casperjs). Gemini is deprecated, use hermione instead.

Huxley

Python framework based on [Selenium Webdriver](https://github.com/SeleniumHQ/selenium/tree/master/javascript/node/selenium-webdriver).

Navalia

Browser Automation based on headless Chrome and GraphQL. (archived 2018)

OcularJS

uses [PhantomJS](https://github.com/ariya/phantomjs).

PhantomCSS

Visual/CSS regression testing with PhantomJS or SlimerJS. No longer maintained since 22 Dec 2017.

PhantomFlow

Experimental approach to UI testing, based on Decision Trees.

PhantomJS

Scriptable Headless WebKit. No longer maintained since 2 June 2018.

trifleJS

Headless automation for Internet Explorer. (last update 2016)

Visual Review

A human-friendly tool for testing and reviewing visual regressions.

WebdriverCSS

WebdriverCSS sits on top of [Webdriver.io](https://github.com/webdriverio/webdriverio/) and hooks into [Selenium](https://github.com/SeleniumHQ/selenium).

The following projects are no longer maintained actively but are still worth mentioning because of their user base.

Miscellaneous

Code of Conduct

See the Code of Conduct for details. Basically it comes down to:

In the interest of fostering an open and welcoming environment, we as
contributors and maintainers pledge to making participation in our project and
our community a harassment-free experience for everyone, regardless of age, body
size, disability, ethnicity, gender identity and expression, level of experience,
nationality, personal appearance, race, religion, or sexual identity and orientation.