wraith

Wraith — A responsive screenshot comparison tool

  • 所有者: bbc/wraith
  • 平台:
  • 許可證: Apache License 2.0
  • 分類:
  • 主題:
  • 喜歡:
    0
      比較:

Github星跟蹤圖

Wraith logo

build status
rubygems version
codeclimate report

Wraith is a screenshot comparison tool, created by developers at BBC News.

DocumentationSourceResponsive News Website

What is it?

Wraith uses a headless browser to create screenshots of webpages on different environments (or at different moments in time) and then creates a diff of the two images; the affected areas are highlighted in blue.

Photo of BBC News with a diff

Documentation

For instructions on how to install, set up and use Wraith and all of its features, visit the Wraith documentation.

A brief overview of how Wraith works is provided below.

Wraith modes

There are several ways in which Wraith can be used:

  1. Comparison of 2 domains (wraith capture). There are also some specialist options within this mode:
    • Spidering 2 domains for changes (wraith capture when no paths property is provided in the configuration file)
    • Running several comparisons at once (wraith multi_capture)
  2. Comparing the same domain over time (wraith history, then wraith latest)

Whichever mode you decide to run Wraith in, the process it follows is generally the same:

  • takes screenshots of your webpages
  • runs a comparison task across them
  • outputs a diff PNG file comparing the two images, and a data.txt file which contains the percentage of pixels that have changed
  • packages all of this up into a gallery.html, ready for you to view
  • if any screenshot's diff is above the threshold you specified in your configuration file, the task exits with a system error code (useful for CI)
  • the failed screenshot will also be highlighted in the gallery

Requirements

ImageMagick is required to compare the screenshots and crop images.

Wraith also requires at least one of these headless browsers:

  • PhantomJS
  • CasperJS (which can be used to target specific selectors)
  • SlimerJS
  • Chrome (Currently using Selenium WebDriver + Chromedriver for Chrome; Can target specific selectors)

Contributing

Please read how to contribute to Wraith.

License

Wraith is available to everyone under the terms of the Apache 2.0 open source license. Take a look at Wraith's LICENSE file.

Credits

Selenium-Wraith

Anyone interested in integrating selenium capability with Wraith should check out Selenium-Wraith (maintained by Mathew Hall), which was forked from BBC's Wraith on 16/04/14 and adds the following capabilities:

  1. Selenium integration, both running locally on a desktop or on a selenium grid
  2. Browser to browser screenshot comparison
  3. Page component-based comparison

概覽

名稱與所有者bbc/wraith
主編程語言Ruby
編程語言Ruby (語言數: 4)
平台
許可證Apache License 2.0
發布數33
最新版本名稱v4.2.4 (發布於 2019-06-26 11:40:44)
第一版名稱1.1.2 (發布於 )
創建於2013-01-23 15:26:31
推送於2023-01-15 21:10:16
最后一次提交2019-06-26 11:38:52
星數4.8k
關注者數162
派生數354
提交數793
已啟用問題?
問題數375
打開的問題數101
拉請求數174
打開的拉請求數23
關閉的拉請求數58
已啟用Wiki?
已存檔?
是復刻?
已鎖定?
是鏡像?
是私有?
去到頂部