All Projects → NiGhTTraX → mugshot

NiGhTTraX / mugshot

Licence: MIT license
Framework independent visual testing library

Programming Languages

typescript
32286 projects
javascript
184084 projects - #8 most used programming language
HTML
75241 projects
CSS
56736 projects

Projects that are alternatives of or similar to mugshot

browser-automation-api
Browser automation API for repetitive web-based tasks, with a friendly user interface. You can use it to scrape content or do many other things like capture a screenshot, generate pdf, extract content or execute custom Puppeteer, Playwright functions.
Stars: ✭ 24 (-80.95%)
Mutual labels:  screenshot, puppeteer, playwright
Jsdom Screenshot
📸 Take screenshots of jsdom with puppeteer
Stars: ✭ 39 (-69.05%)
Mutual labels:  screenshot, puppeteer
Ashot
WebDriver Screenshot utility. Take screenshots, crop, prettify, compare
Stars: ✭ 507 (+302.38%)
Mutual labels:  screenshot, webdriver
Page2image
📷 page2image is a npm package for taking screenshots which also provides CLI command
Stars: ✭ 66 (-47.62%)
Mutual labels:  screenshot, puppeteer
Puppetron
Puppeteer (Headless Chrome Node API)-based rendering solution.
Stars: ✭ 429 (+240.48%)
Mutual labels:  screenshot, puppeteer
Storycap
A Storybook Addon, Save the screenshot image of your stories 📷 via puppeteer.
Stars: ✭ 451 (+257.94%)
Mutual labels:  screenshot, puppeteer
Dark Mode Screenshot
This Puppeteer script takes a 📷 screenshot of a webpage in 🌞 Light and 🌒 Dark Mode.
Stars: ✭ 47 (-62.7%)
Mutual labels:  screenshot, puppeteer
puppeteer-screenshot-tester
Small library that allows us to compare screenshots generated by puppeteer in our tests.
Stars: ✭ 50 (-60.32%)
Mutual labels:  screenshot, puppeteer
Lancia
网页转PDF渲染服务。提供收据、发票、报告或任何网页内容转PDF的微服务
Stars: ✭ 108 (-14.29%)
Mutual labels:  screenshot, puppeteer
Site Scan
CLI for capturing website screenshots, powered by puppeteer.
Stars: ✭ 137 (+8.73%)
Mutual labels:  screenshot, puppeteer
Dhalang
Generate PDFs and make screenshots of HTML using Puppeteer in Ruby
Stars: ✭ 41 (-67.46%)
Mutual labels:  screenshot, puppeteer
Docker Puppeteer
docker image with Google Puppeteer installed
Stars: ✭ 415 (+229.37%)
Mutual labels:  screenshot, puppeteer
Singlefile
Web Extension for Firefox/Chrome/MS Edge and CLI tool to save a faithful copy of an entire web page in a single HTML file
Stars: ✭ 4,417 (+3405.56%)
Mutual labels:  screenshot, puppeteer
Chromda
λ 🖼️ Chromda is an AWS Lambda function for capturing screenshots of websites.
Stars: ✭ 481 (+281.75%)
Mutual labels:  screenshot, puppeteer
Webshot Factory
Web Screenshots at scale based on headless chrome
Stars: ✭ 288 (+128.57%)
Mutual labels:  screenshot, puppeteer
Chart To Aws
Microservice to generate screenshot from a webpage and upload it to a AWS S3 Bucket.
Stars: ✭ 43 (-65.87%)
Mutual labels:  screenshot, puppeteer
playwright-demos
playwright for scrapping and UI testing / automate testing workflows
Stars: ✭ 65 (-48.41%)
Mutual labels:  puppeteer, playwright
pappet
A command-line tool to crawl websites using puppeteer.
Stars: ✭ 95 (-24.6%)
Mutual labels:  screenshot, puppeteer
vrt-react
Take a screenshot 📸 of React component. Push it and compare images in pull request.
Stars: ✭ 19 (-84.92%)
Mutual labels:  screenshot, puppeteer
Puppeteer Dart
A Dart library to automate the Chrome browser over the DevTools Protocol. This is a port of the Puppeteer API
Stars: ✭ 92 (-26.98%)
Mutual labels:  screenshot, puppeteer

logo

Framework independent visual testing library

Build status codecov npm type definitions License

View Docs


Introduction

Mugshot is a node library for doing visual regression testing. The way screenshots are taken, processed, compared and stored is entirely customizable. You can use it to write visual regression tests for websites, mobile apps, native apps etc. Moreover, Mugshot doesn't impose any preferences on how you write or execute the tests, it just gives you an assertion that you can call however and whenever you want.

Features

  • Framework independent so you can choose your favorite tools or plug it into your existing testing suite.
  • Produces diff images if a test fails.
  • Throws on missing baselines (can be toggled through options).
  • Everything is pluggable (screenshotter, differ, storage etc.).

Installation

npm install --save-dev mugshot

Or with yarn

yarn add -D mugshot

Depending on how you want to take screenshots, you'll need a Screenshotter implementation. Mugshot bundles a WebdriverScreenshotter that you can use with Webdriver compatible clients e.g. Selenium or Appium. Each client might need an adapter that translates its API to the interface that Mugshot expects. The following adapters are available:

Package Version
@mugshot/webdriverio npm
@mugshot/puppeteer npm
@mugshot/playwright npm

Motivation

Manually checking one component for unexpected visual changes is hard. Doing it across your entire UI is harder. Doing it in multiple browsers/devices is even harder. Making sure everyone on your team does it is the hardest.

Mugshot aims to automate that process. It offers a simple API that lets you compare an existing baseline screenshot with a fresh screenshot and make sure they're identical. If they're not you'll get a diff image highlighting the differences. You can then commit it as the new baseline if the changes are expected, or fix the code and rerun the tests.

Expected Actual Diff
expected actual diff

Docs

View Docs

License

MIT

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].