• This repository has been archived on 05/Aug/2020
  • Stars
    star
    277
  • Rank 148,291 (Top 3 %)
  • Language
    Clojure
  • License
    Apache License 2.0
  • Created over 9 years ago
  • Updated over 4 years ago

Reviews

There are no reviews yet. Be the first to send feedback to the community and the maintainers!

Repository Details

VisualReview, a human-friendly tool for testing and reviewing visual regressions.

This project has been abandoned

As you might have noticed from the commit history, this project hasn't received the love it requires to keep it in working order. As maintainers have moved on to other projects and/or don't have the time to spend on it anymore, we decided to formally abandon this project. We'll keep it archived in Github so anyone willing to fork it is able to do so. Please note the permissions and limitations of the Apache license (see LICENSE file) when you do. Thanks!

VisualReview logo

Build Status Join the chat at https://gitter.im/xebia/VisualReview

VisualReview's goal is to provide a productive and human-friendly workflow for testing and reviewing your web application's layout for any regressions.

VisualReview functions as a server which accepts screenshots of your web application, sent for example, from your selenium or protractor scripts. These shots are then compared to screenshots you uploaded and reviewed earlier. VisualReview will display and highlight any differences between the two and allows you to either accept or reject these changes.

Currently VisualReview provides a Protractor plug-in to easily upload screenshots from your protractor tests. However, the VisualReview server has a simple API which allows compatibility with other testing frameworks. We are working on other plug-ins and hope to release them soon.

See it in action

VisualReview visual regression tool in action

Above you can see how the application helps you to identify and evaluate visual changes in your application.

Getting started

For a quick demo try the protractor example.

To use VisualReview we'll start the VisualReview app itself. After that, we'll run tests that send screenshots to the server.

Configuring and starting the VisualReview server

Running your first test

  • Send screenshots during a test to VisualReview. We currently provide a Protractor plug-in to do this. See the protractor-plugin's README for details on how to configure Protractor to send screenshots to VisualReview.

Reviewing the results

  • Go back to the VisualReview page on http://localhost:7000 (or the port you configured in config.edn).
  • Navigate to your project and suite name. Here you see all the times you ran a test script against this project and suite combination.
  • Click on the run to review all screenshots and differences. If this is the first time you created a run in this suite, there will be no differences yet.
  • To approve or reject a screenshot, use the top-right menu or hit the 'a' or 'x' key on your keyboard.
    • When you accept a screenshot, it will be added to this suite's so-called 'baseline'. Every future screenshot with that name inside the suite will be compared to this baseline. All screenshots you accept in future runs will overwrite this baseline. The baseline will therefore contain all latest accepted screenshots of a suite to which all new screenshots will be compared against.
    • When you reject a screenshot, the baseline will not be updated.
    • After you either accepted or rejected a screenshot, you can always revert this decision by selecting the 'pending' option in the top right menu.

Integration with other tools

An updated list of currently available integrations with other tools can be found here

How to contribute

VisualReview provides a REST API for easy integration with your own toolset. See the API documentation for more details.

To run or build the VisualReview project itself from source, see this wiki page.

Features in development

For our current- and future development focus, see the wiki.

Original authors and maintainers

We'd like to acknowledge the original authors of this project, from before version 0.1 and beyond:

License

Copyright © 2015 Xebia

Distributed under the Apache License 2.0.

More Repositories

1

Xebium

Xebium provides Selenium (webdriver) bindings for FitNesse, with Selenium-IDE support
Java
76
star
2

mobilehacktools

A repository for scripting a mobile attack toolchain
Python
63
star
3

jackson-lombok

Jackson extension to add support for the generated constructors of Project Lombok objects
Java
54
star
4

VisualReview-protractor

Protractor extension to send screenshots to VisualReview visual regression tool
JavaScript
24
star
5

microservices-breaking-up-a-monolith

Refactoring a monolith to Microservices
JavaScript
21
star
6

angularjs-tabs-and-lazy-data-loading

JavaScript
15
star
7

CoDDDing-labs

C#
12
star
8

mock-rest-request

Mock REST requests in NodeJS
JavaScript
12
star
9

falco-eks-audit-bridge

Enable Falco to read audit logs from EKS
Go
11
star
10

farmbot-py

Python library to interact with FarmBot via MQTT
Python
11
star
11

essentials

Static site generator for the Xebia Essentials cards
Vue
10
star
12

xebicon-2013__cc-in-aa

A demonstration of the "Custom ViewGroup" advice given during the Clean Code in Android Apps talk of XebiCon 2013.
Java
9
star
13

nimbus

An Akka (HTTP) driven Google Cloud Datastore Client
Scala
8
star
14

kafka-connect-couchdb

A Kafka connector for CouchDB
Java
7
star
15

ai-toolbox

This repo is used for sharing AI productivity tools & workflows within Xebia to empower employees in using AI in a responsible way making them more productive
Dockerfile
7
star
16

vagrantboxes

A collection of Vagrant boxes
Puppet
6
star
17

workshop-docker-swarm

A short hands-on introduction to Docker Swarm 1.12
JavaScript
5
star
18

pwa-workshop

PWA workshop for Amsterdam JSNation 2018
JavaScript
4
star
19

aliyun-nuke

Clears out all resources in any given Alibaba Cloud account. Use with extreme caution!
Go
4
star
20

FitnesseSikuli

Integrating Sikuli in Fitnesse ... automate any UI task
Java
4
star
21

mesos-dns

official mesos-dns docker image extended to allow configuration using environment variables
Go
3
star
22

angular-form-messages

JavaScript
2
star
23

training-react

JavaScript
2
star
24

eda-training-aws

Event driven architecture training AWS with SQS and SNS
Java
2
star
25

modern-javascript-training

Modern JavaScript training
JavaScript
2
star
26

robotchallenge

Repository for the Xebia Test Automation robot challenge.
C++
2
star
27

fitnesse-slim-soap-driver

Fitnesse Slim SOAP driver
Java
2
star
28

ios-web-demo

iOS app for giving web demos
Objective-C
1
star
29

realtime-graphql

Realtime collaboration with GraphQL
TypeScript
1
star
30

cypress-meetup-2018

JavaScript
1
star
31

go-training

Go
1
star
32

gdex24-event-portal

JavaScript
1
star
33

marketing-quiz

marketing-quiz
JavaScript
1
star
34

logstore

CouchApp/ElasticSearch implementation for analysing log data
JavaScript
1
star
35

regex-kata

JavaScript
1
star
36

vue-react-tailwind-demo

Example repo to demonstrate how to integrate TailwindCSS into VueJS and React projects.
TypeScript
1
star
37

cma

Tooling for the Architectural Language ("Call Me ArchitecturalLanguage")
Java
1
star
38

grpc-loadtest

a gRPC loadtest
C#
1
star
39

xebia.github.com

Xebia.github.com page
HTML
1
star
40

workshop-craft-beginner

Craftsmanship workshop Beginner
Java
1
star
41

ios-DemoForBlog

iOS Demo code for blog posting
Objective-C
1
star
42

XSEC-Azure-IAC

HCL
1
star
43

demo-timer

Simple app to run a Xebia branded timer during Innovation Day demos
Vue
1
star
44

testcafe-training

TestCafe Training
JavaScript
1
star
45

amazon-bedrock-workshop

amazon-bedrock-workshop
Jupyter Notebook
1
star