npm package discovery and stats viewer.

Discover Tips

  • General search

    [free text search, go nuts!]

  • Package details

    pkg:[package-name]

  • User packages

    @[username]

Sponsor

Optimize Toolset

I’ve always been into building performant and accessible sites, but lately I’ve been taking it extremely seriously. So much so that I’ve been building a tool to help me optimize and monitor the sites that I build to make sure that I’m making an attempt to offer the best experience to those who visit them. If you’re into performant, accessible and SEO friendly sites, you might like it too! You can check it out at Optimize Toolset.

About

Hi, 👋, I’m Ryan Hefner  and I built this site for me, and you! The goal of this site was to provide an easy way for me to check the stats on my npm packages, both for prioritizing issues and updates, and to give me a little kick in the pants to keep up on stuff.

As I was building it, I realized that I was actually using the tool to build the tool, and figured I might as well put this out there and hopefully others will find it to be a fast and useful way to search and browse npm packages as I have.

If you’re interested in other things I’m working on, follow me on Twitter or check out the open source projects I’ve been publishing on GitHub.

I am also working on a Twitter bot for this site to tweet the most popular, newest, random packages from npm. Please follow that account now and it will start sending out packages soon–ish.

Open Software & Tools

This site wouldn’t be possible without the immense generosity and tireless efforts from the people who make contributions to the world and share their work via open source initiatives. Thank you 🙏

© 2024 – Pkg Stats / Ryan Hefner

protractor-jasmine2-screenshot-reporter

v0.5.1

Published

Use the screenshot reporter to capture screenshots after each executed Protractor test case.

Downloads

92,574

Readme

Protractor screenshot reporter for Jasmine2

npm version

Reporter for Protractor that will capture a screenshot after each executed test case and store the results in a HTML report. (supports jasmine2)

Usage

The protractor-jasmine2-screenshot-reporter is available via npm:

$ npm install protractor-jasmine2-screenshot-reporter --save-dev

In your Protractor configuration file, register protractor-jasmine2-screenshot-reporter in jasmine:

Options

Destination directory

Output directory for created files. All screenshots and reports will be stored here.

If the directory doesn't exist, it will be created automatically or otherwise cleaned before running the test suite.

Clean destination directory (optional)

This option is enabled by default. Toggle whether or not to remove and rebuild destination when jasmine starts.

This is useful when you are running protractor tests in parallel, and wish all of the processes to report to the same directory.

When cleanDestination is set to true, it is recommended that you disabled showSummary and showConfiguration, and set reportTitle to null. If you do not, the report will be pretty cluttered.

Filename (optional)

Filename for html report.

Default is report.html

Use External CSS (optional)

Array of filenames that specifies extra css files to include in the html report. You can find the classnames and element IDs used either from browsers dev tools or in example stylesheet.

Use External JS (optional)

A string or an array of javascript filenames that should be loaded in the html test report.

Ignore pending specs (optional)

When this option is enabled, reporter will not create screenshots for pending / disabled specs. Only executed specs will be captured.

Default is false

Capture only failed specs (optional)

When this option is enabled, reporter will create screenshots only for specs that have failed their expectations.

Default is false

Report only failed specs (optional)

This option is enabled by default - in combination with captureOnlyFailedSpecs, it will capture and report screenshots only for failed specs. Turning this option off will cause the report to contain all specs, but screenshots will be captured only for failed specs.

Display summary in report (optional)

This option is enabled by default - it will display the total number of specs and the number of failed specs in a short summary at the beginnning of the report.

Default is true

Display links to failed specs in report summary (optional)

If this option is enabled with the report summary, it will display a link to each failed spec as a part of the short summary at the beginnning of the report.

Default is false

Display configuration summary in report (optional)

This option is enabled by default - it will display a summary of the test configuration details at the end of the report.

Default is true

Report title (optional)

This option will add a title to the report.

Default is 'Report'

Report failedAt url (optional)

When a spec fails, include the current url in the report.

Default is false

Extra configuration summary items (optional)

The user may specify a set of key/value pairs that are appended to the configuration report.

Path Builder (optional)

Function used to build custom paths for screenshots. For example:

By default, the path builder will generate a random ID for each spec.

Metadata Builder (optional)

Function used to build custom metadata objects for each spec. Files (json) will use the same filename and path as created by Path Builder. For example:

By default, the runner builder will not save any metadata except the actual html report.

Preserve Directory (optional)

This option is disabled by default. When this option is enabled, than for each report will be created separate directory with unique name. Directory unique name will be generated randomly.

Inline Images (optional)

Produce images inline in the report instead of links.

Default is false

Forked browser instances

The reporter can take screenshots also from instances forked off the main browser. All you need to do is just register the instance in the begining of your suite / spec, e.g. like so:

Remember to unregister the instance once you're done with it:

Tests

Automated unit tests for Protractor screenshot reporter for Jasmine2 are run by Mocha (Yes, we know that it is funny). In order to run it, you can use either npm test or by gulp by using gulp test.

Coverage report

Coverage is being generated by Istanbul. You can generate the HTML report by using either npm run coverage or by gulp test.

Coding style

Coding style tests are being done by jshint. You can find the code guide in .jshintrc file. Run jshint by gulp lint or npm lint.

Tips & tricks

By default, no report is generated if an exception is thrown from within the test run. You can however catch these errors and make jasmine report current spec explicitly by adding following to your protractor.conf / beforeLaunch method:

process.on('uncaughtException', function () {
    reporter.jasmineDone();
    reporter.afterLaunch();
});