/web_page_archive

The Web Page Archive module allows you to use Drupal to perform periodic snapshots and visual regression testing on local and remote websites based of a list of URLs or XML sitemaps, all within the familiar Drupal admin interface.

Primary LanguagePHPGNU General Public License v3.0GPL-3.0

Web Page Archive

The Web Page Archive module allows you to use Drupal to perform periodic snapshots and visual regression testing on local and remote websites based of a list of URLs or XML sitemaps, all within the familiar Drupal admin interface.

Watch Texas Camp 2018 - Archiving and Visual Regression using Drupal 8 for a basic walkthrough of functionality and a demonstration.

See Project Roadmap to see what's on the horizon.

Capture Utilities (Archiving)

Snapshots are performed by Capture Utility plugins. Web Page Archive provides the following capture utilities:

Plugin Machine Name Purpose
HTML Capture Utility wpa_html_capture Captures raw HTML from URLs.
Screenshot Capture Utility wpa_screenshot_capture Capture Screenshots of URLs (uses Headless Chrome or PhantomJS).
Skeleton Capture Utility wpa_skeleton_capture Example code that provides a template for building additional capture utility plugins.

Comparison Utilities (Visual Regression)

Comparisons are performed by Comparison Utility plugins. Web Page Archive provides the following capture utilities:

Plugin Machine Name Purpose Applies to
File: Size web_page_archive_file_size_compare Compares files based on size Screenshots, HTML
HTML: Diff wpa_html_diff_compare Compares HTML line-by-line HTML
Screenshot: Pixel wpa_screenshot_capture_pixel_compare Compares images and generates diff images (uses ImageMagick 7.0+) Screenshots
Screenshot: Slider wpa_screenshot_capture_slider_compare Compares images via slider Screenshots

Other modules extending Web Page Archive:

Requirements

  • Drupal 8.3+
  • PHP 7.0+
  • PHP extensions: ext-openssl
  • Each capture utility may have additional requirements. See the respective installation guide for more information.
  • A lot of storage space (especially when using screenshot capture utility)

Installation

See the following guides for installing web page archive and capture utility dependencies:

Contributing

This is a relatively new module and features are continuously being added. If you would like to assist in the development of this module, we welcome your help.

Please follow the Drupal Coding Standards.

Ways You Can Help

  • Use the Module and Let Us Know Your Thoughts
  • Report Bugs
  • Submit Ideas/Patches on drupal.org
  • Submit Pull Requests on github.com
  • Write Tests
  • Write/Edit Documentation

Helpful Links

Maintainers

This project has been sponsored by Rackspace.