README
BSBS
A BackstopJS-like Visual Regression Testing Tool for BrowserStack Automate
npx bsbs
--mode=(reference|test|report)
--file=<path to the backstop.json or backstop.js>
--capabilities=<path to the selenium capability config>
(--filter=<regexp of scenario>)
(--local)
See Example
See example report here:
https://mangano-ito.github.io/bsbs/
and its configurations:
- https://github.com/mangano-ito/bsbs/blob/gh-pages/backstop.js
- https://github.com/mangano-ito/bsbs/blob/gh-pages/capabilities.json
Usage
- Capture Reference Pages:
npx bsbs --mode=reference --file=backstop.json --capabilities=capabilities.json
- Capture Test Pages:
npx bsbs --mode=test --file=backstop.json --capabilities=capabilities.json
- Compare and Generate Test Report:
npx bsbs --mode=report --file=backstop.json --capabilities=capabilities.json
Options
--mode
reference
: run tests on reference pagestest
: run tests on test pagesreport
: generate test reports (reference & test must be done before this)
--file
Path to BackstopJS Test: backstop.json
| backstop.js
(see https://github.com/garris/BackstopJS/tree/e4ef74b0f25c27125dffab1b14237f924dbf597e#using-backstopjs)
--capabilities
Path to Selenium Capabilities Configuration for BrowserStack Automate.
(see https://www.browserstack.com/automate/capabilities)
This file also can be provided in .json
({ ... }
) or in .js
(with module.exports = { ... };
)
(Optional) --filter
filter scenarios to run by RegExp given
(e.g.: --filter="my-top-page.*"
)
(Optional) --local
enable BrowserStack local testing (using your internal network)
(see https://www.browserstack.com/automate/node#setting-local-tunnel)
Environment Variables
You can also always give your default Environment Variables by placing .env
file. See example.env
for example.
(Required unless given in capabilities file) BROWSERSTACK_USERNAME
The User ID for BrowserStack Automate
(see https://www.browserstack.com/accounts/settings)
(Required unless given in capabilities file) BROWSERSTACK_ACCESS_KEY
The Access Key for BrowserStack Automate
(see https://www.browserstack.com/accounts/settings)
(Optional) ARTIFACTS_REFERENCE_PATH
Path to the Directory for Reference Screenshots
(default: ${working directory}/artifacts/reference/
)
(Optional) ARTIFACTS_TEST_PATH
Path to the Directory for Test Screenshots
(default: ${working directory}/artifacts/test/
)
(Optional) ARTIFACTS_DIFFERENCE_PATH
Path to the Directory for Difference Images
(default: ${working directory}/artifacts/difference/
)
(Optional) ARTIFACTS_REPORT_PATH
Path to the Directory for Test Reports
(default: ${working directory}/artifacts/
)