Git Product home page Git Product logo

visual-regression-tracker's Introduction

Visual Regression Tracker logo

Visual Regression Tracker

Open source, self hosted solution for visual testing and managing results of visual testing.

Hello

How it works

Service receives images, performs pixel by pixel comparison with it’s previously accepted baseline and provides immediate results in order to catch unexpected changes.

Demo

Features

  • Automation framework independent - no need to stick with specific automation tool, integrate with existing one
  • Platform independent - web, mobile, desktop etc. as long as you could make a screenshot
  • Baseline history - track how baseline image changed since the beginning
  • Ignore regions - improve stability by ignoring not important or not controllable parts of image
  • Language support - JS, Java, Python, .Net or any other via REST API (need more?)
  • Easy setup - everything is inside Docker images
  • Self-hosted - keep your data save inside your intranet

Glossary

  • TestVariation - historical record of Baselines by Name + Branch + OS + Browser + Viewport + Device,
  • Baseline - validated and accepted image, latest will be used as expected result in TestRun
  • TestRun - result of comparing image against Baseline
  • Build - list of TestRuns
  • Project - list of Builds and TestVariations

Set up

Linux, macOS, WSL

  1. Install Docker
  2. Download the installation script
curl https://raw.githubusercontent.com/Visual-Regression-Tracker/Visual-Regression-Tracker/master/vrt-install.sh -o vrt-install.sh
chmod a+x vrt-install.sh
  1. Run the installation script

./vrt-install.sh

Command line arguments

Installs the Visual Regression Tracker

Usage: ./vrt-install.sh

Arguments:
    -h | --help
    -a | --frontend-url <url>   Set the Front-end url. Default: http://localhost:8080
    -r | --backend-url <url>    Set the API url. Default: http://localhost:4200
    --jwt-secret <secret>       Set the JWT secret. Default: randomly generated

By Hand

  1. Install Docker
  2. Copy docker-compose.yml

$ curl https://raw.githubusercontent.com/Visual-Regression-Tracker/Visual-Regression-Tracker/master/docker-compose.yml -o docker-compose.yml

  1. Copy .env

$ curl https://raw.githubusercontent.com/Visual-Regression-Tracker/Visual-Regression-Tracker/master/.env -o .env

  1. Start service

$ docker-compose up

Wait untill you see your creds printed.

New users and projects could be created via frontend app by default on http://localhost:8080

Success setup

Integration

Use implemented libraries to integrate with existing automated suites by adding assertions based on image comparison. We provide native integration with automation libraries, core SDK and Rest API interfaces that allow the system to be used with any existing programming language.

Agents

Core SDK

Basic wrapper over API to be used for integration with existing tools

Getting started guide

Videos

Wiki

Integration examples

Here you could find examples

Contribution

  1. Try it, raise tickets with ideas, questions, bugs and share feedback :)
  2. More language support for SDK
  3. More integration with specific testing frameworks (agents)

visual-regression-tracker's People

Contributors

pashidlos avatar dortizesquivel avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.