GithubHelp home page GithubHelp logo

ceros / protractor-jasmine2-html-reporter Goto Github PK

View Code? Open in Web Editor NEW

This project forked from qualityshepherd/protractor-jasmine2-html-reporter

0.0 3.0 0.0 91 KB

HTML reporter for Jasmine2 and Protractor

JavaScript 73.22% HTML 23.82% CSS 2.96%

protractor-jasmine2-html-reporter's Introduction

protractor-jasmine2-html-reporter

npm version

Differences in this version

  • added retainScreenshots: true to retain screenshots on subsequent test runs. Otherwise these get overwritten each run, which isn't great if you want historical reports.
  • added support for sharded test runs. So if you shard your tests, instead of reported after each file (which who wants that?), it will append the result file, instead of overwriting, and thus, have the same behavior for non-sharded tests. Thanks to aditya reddy for this!

HTML reporter for Jasmine2 and Protractor that will include screenshots of each test if you want. This work is inspired by:

Usage

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

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

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

var Jasmine2HtmlReporter = require('protractor-jasmine2-html-reporter');

exports.config = {
   // ...
   onPrepare: function() {
      jasmine.getEnv().addReporter(
        new Jasmine2HtmlReporter({
          savePath: 'target/screenshots'
        })
      );
   }
}

Options

Destination folder

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.

jasmine.getEnv().addReporter(new Jasmine2HtmlReporter({
   savePath: './test/reports/'
}));

Default folder: ./

Screenshots folder (optional)

By default the screenshots are stored in a folder inside the default path

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

jasmine.getEnv().addReporter(new Jasmine2HtmlReporter({
   savePath: './test/reports/',
   screenshotsFolder: 'images'
}));

Default folder: screenshots

Take screenshots (optional)

When this option is enabled, reporter will create screenshots for specs.

jasmine.getEnv().addReporter(new Jasmine2HtmlReporter({
   takeScreenshots: false
}));

Default is true

Take screenshots only on failure (optional) - (NEW)

This option allows you to choose if create screenshots always or only when failures. If you disable screenshots, obviously this option will not be taken into account.

jasmine.getEnv().addReporter(new Jasmine2HtmlReporter({
   takeScreenshots: true,
   takeScreenshotsOnlyOnFailures: true
}));

Default is false (So screenshots are always generated)

FixedScreenshotName (optional)

Choose between random names and fixed ones.

jasmine.getEnv().addReporter(new Jasmine2HtmlReporter({
   savePath: './test/reports/',
   fixedScreenshotName: true
}));

Default is false

FilePrefix (optional)

Filename for html report.

jasmine.getEnv().addReporter(new Jasmine2HtmlReporter({
   savePath: './test/reports/',
   fileNamePrefix: 'Prefix'
}));

Default is nothing

Consolidate and ConsolidateAll (optional)

This option allow you to create a single file for each reporter.

jasmine.getEnv().addReporter(new Jasmine2HtmlReporter({
   consolidate: false,
   consolidateAll: false
}));

Default is true

CleanDestination (optional)

This option, if false, will not delete the reports or screenshots before each test run.

jasmine.getEnv().addReporter(new Jasmine2HtmlReporter({
   savePath: './test/reports/',
   cleanDestination: false
}));

Default is false

showPassed (optional)

This option, if false, will show only failures.

jasmine.getEnv().addReporter(new Jasmine2HtmlReporter({
   ....
   showPassed: false
}));

Default is true

showFailuresOnly (optional)

This option if true will hide all passed tests and only display the failures.

jasmine.getEnv().addReporter(new Jasmine2HtmlReporter({
   ....
   showFailuresOnly: true
}));

Default is false

NB If you are using protractor flake, this will show passed tests if they passed on the second run but failed on the first.

fileName (optional)

This will be the name used for the html file generated thanks to this tool.

jasmine.getEnv().addReporter(new Jasmine2HtmlReporter({
   ....
   fileName: 'MyReportName'
}));

Default is htmlReport

fileNameSeparator (optional)

This will set the separator between filename elements, for example, prefix, sufix etc.

jasmine.getEnv().addReporter(new Jasmine2HtmlReporter({
   ....
   fileNameSeparator: '_'
}));

Default is -

fileNamePrefix (optional)

Prefix used before the name of the report

jasmine.getEnv().addReporter(new Jasmine2HtmlReporter({
   ....
   fileNamePrefix: ''
}));

Default is empty

fileNameSuffix (optional)

Suffix used after the name of the report

jasmine.getEnv().addReporter(new Jasmine2HtmlReporter({
   ....
   fileNameSuffix: ''
}));

Default is empty

fileNameDateSuffix (optional)

Datetime information to be added in the name of the report. This will be placed after the fileNameSuffix if it exists. The format is: YYYYMMDD HHMMSS,MILL -> 20161230 133323,728

jasmine.getEnv().addReporter(new Jasmine2HtmlReporter({
   ....
   fileNameDateSuffix: true
}));

Default is false

RetainScreenshots (optional)

This option, if true, will not delete the screenshots before each test run.

jasmine.getEnv().addReporter(new Jasmine2HtmlReporter({
   savePath: './test/reports/',
   retainScreenshots: true
}));

Default is false

protractor-jasmine2-html-reporter's People

Contributors

domiebett avatar kenzitron avatar msiddique avatar qualityshepherd avatar

Watchers

James Cloos avatar  avatar  avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.