qa-screenshot-comparator
v1.1.7
Published
Simple tool for generating and comparing websitre screenshots.
Downloads
25
Readme
This handy tool gives us the possibility to generate and compare website screenshots for any resolution possible resolution.
Requirements
You need to have node version above 8
Installation
If you want to install the project as standalone application, clone the project and run
npm install
If you want to install the project as dependency of your application and use its API, run
npm install qa-screenshot-comparator
Usage
Generating screenshots for resolution(s) via CLI
node src/app.js [options]
CLI Options
-h, --help
-v, --version
-u URL, --url
-s SIZE, --size
-f FOLDER, --folder
Examples
Generating screenshots for all resolutions
node src/app.js -u=http://example.com -s=all -f=first_website_folder
Generating screenshots for only for desktop
node src/app.js -u=http://example.com -s=desktop -f=first_website_folder
Generating screenshots for desktop and mobile
node src/app.js -u=http://example.com -s=desktop -s=mobile -f=first_website_folder
API
const {Generator} = require('qa-screenshot-comparator');
let generatorInstance = new Generator({
url: <Required> [String: website url],
resolutionName: <Required> [String|Array: resolution(s)], // Available options [ desktop, laptop, tablet, mobile, all ]
runtime: <Required> [String: The path for the generation of screenshots],
generateSitemap: <Optional - default: true> [Boolean: whether to generate sitemap for url],
authParams: <Optional - default: {}> [Object: HTTP basic auth params],
includeThumbnails: <Optional - default: false> [Boolean: whether to generate thumbnails for each image],
thumbnailWidth: <Optional - default: 240> [Number: thumnail width in pixels],
folderName: <Optional - default: automatically generated from url> [String: folder name],
onUrlFound: function (data) { },
onUrlFindError: function (data) { },
onUrlFindFinish: function (data) { },
onScreenshotGenerationStart: function (data) { },
onScreenshotGenerate: function (data) { },
onScreenshotCompare: function (data) { },
onScreenshotGenerationFinish: function (data) { },
onScreenshotThumbnailGenerate: function (data) { },
onScreenshotThumbnailGenerateError: function (data) { }
});
generatorInstance.run();
authParams
is an object with this template
let authParams = {
HTTP_BASIC_AUTH: [Boolean: whether to run authentication],
HTTP_BASIC_AUTH_USERNAME: [String: auth username],
HTTP_BASIC_AUTH_PASSWORD: [String: auth password]
};
Here is the width of the generated screenshots for each resolution name
| resolutionName
| pixels |
-----------|-------
| desktop | 1440px |
| laptop | 1024px |
| tablet | 768px |
| mobile | 360px |