fffunction / backstop-crawl

🕷 Crawls a site to generate a backstopjs config file with scenarios pre-populated
38 stars 18 forks source link
javascript pr-welcome regression-testing

$ backstop-crawl

Stories in Ready Build Status Coverage Status

backstop-crawl is a tool for automatically generating the backstop.json required for backstop by crawling a website.

Install

$ npm install --global backstop-crawl

Usage

❯ backstop-crawl

  Crawl a site to generate a backstopjs config

  Usage
    $ backstop-crawl <url>

  Options
    --outfile, -o        Save the backstop config to this file
    --debug              Logs out errors produced while crawling
    --ignore-robots      Ignore the sites robots.txt
    --ignore-ssl-errors  Treat any certificate as valid (e.g. self-signed
                          or expired)
    --allow-subdomains   Allow crawling links found to subdomains of the
                          current domain
    --limit-similar[=3]  Limits the number of similar URLs to a set number
                         Defaults to 3
                          e.g /blog/1, /blog/2, /blog/3
    --reference-url  Allows a reference URL to be used in testing

  Examples
    $ backstop-crawl http://localhost
    $ backstop-crawl http://localhost --reference-url='https://mycoolsite.com'

backstop.template.json

You can customize the contents of the generated backstop.json file by creating a backstop.template.json file. In addition to standard items in backstop.json the backstop.template.json needs a defaultScenario key. This will be used when generating the scenarios for crawled URLs.

For example:

{
  "scenarios": [],
  "defaultScenario": {
    "label": "Default",
    "url": "",
    "referenceUrl": "",
    "hideSelectors": [],
    "selectors": [
    "document"
    ],
    "readyEvent": null,
    "delay": 1500,
    "misMatchThreshold": 0.1
  }
}

License

MIT © fffunction fffunction.co