Giter Club home page Giter Club logo

protractor-pretty-html-reporter's Introduction

protractor pretty html reporter

Build Status Latest Version NPM Version NPM Monthly Downloads

npm i protractor-pretty-html-reporter --save-dev

NOTE: jasmine is set as a peer dependency

Basic features

  • Pass/Fail at a glance via navbar highlighting
  • Bolds it('segment') within describe sentence for easy code searching
  • Adds timing in milliseconds for total run time and spec run times
  • Browser console logs for each spec
  • Long running test support, report can be refreshed during test runs (see options)
  • Suspect Line, best guess in the stack trace for your code (see options)
  • Screenshots (see options)

screen shot

More Screenshots

Basic Setup

protractor.conf

var PrettyReporter = require('protractor-pretty-html-reporter').Reporter;

var prettyReporter = new PrettyReporter({
    // required, there is no default
    path: path.join(__dirname, 'results'),
    screenshotOnPassed: true
});

module.exports = {
    /* the rest of the object omitted */
    onPrepare: function() {
        jasmine.getEnv().addReporter(prettyReporter);
    },
    /* if using isSharded option see below */
    beforeLaunch() {
        prettyReporter.startReporter();
    }
};

Reporter Options

Name Type Default Description
path String path the report.html will be written to (required)
screenshotOnPassed Boolean false take screenshots for passing tests too.
writeReportEachSpec Boolean true writes the report.html after each spec completes, this is recommended for long running tests
showBrowser Boolean true shows browser icon on the overview
highlightSuspectLine Boolean true highlight the "suspect line" in the dialog
isSharded Boolean false turn on if using { shardOnSpec: true} option in protractor. See above for beforeLaunch hook that is needed as well.

More Screenshots

Highlight the suspect line in your stacktrace

screen shot

Show a screen shot of the error page

screen shot

Show console logs

screen shot

protractor-pretty-html-reporter's People

Contributors

stuisme avatar terrymooreii avatar yeikel avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar

protractor-pretty-html-reporter's Issues

Error with reports with focused or disabled tests

Protractor is failing with the following when a test is disabled or focused:

[2018-01-25 13:07:34.138] [ERROR] - TypeError: First argument must be a string, Buffer, ArrayBuffer, Array, or array-like object.
    at Function.Buffer.from (buffer.js:183:11)
    at new Buffer (buffer.js:158:17)
    at Reporter.writeImage (/Users/xxx/projects/yy-static/protractor/node_modules/protractor-pretty-html-reporter/reporter.js:169:22)
    at Reporter.specDone (/Users/xxx/projects/yy-static/protractor/node_modules/protractor-pretty-html-reporter/reporter.js:117:18)
    at dispatch (/Users/xxx/projects/yy-static/protractor/node_modules/jasmine-core/lib/jasmine-core/jasmine.js:4522:28)
    at ReportDispatcher.specDone (/Users/xxx/projects/yy-static/protractor/node_modules/jasmine-core/lib/jasmine-core/jasmine.js:4493:11)
    at Spec.specResultCallback [as resultCallback] (/Users/xxx/projects/yy-static/protractor/node_modules/jasmine-core/lib/jasmine-core/jasmine.js:1220:18)
    at complete (/Users/xxx/projects/yy-static/protractor/node_modules/jasmine-core/lib/jasmine-core/jasmine.js:565:12)
    at QueueRunner.runnerConfig.onComplete (/Users/xxx/projects/yy-static/protractor/node_modules/jasmine-core/lib/jasmine-core/jasmine.js:558:46)
    at Immediate._onImmediate (/Users/xxx/projects/yy-static/protractor/node_modules/jasmine-core/lib/jasmine-core/jasmine.js:4382:12)
    at runCallback (timers.js:789:20)
    at tryOnImmediate (timers.js:751:5)
    at processImmediate [as _immediateCallback] (timers.js:722:5)

I'm using jasmine 2.9 with protractor 5.2.2.

The report is not appearing properly as defined/displayed in the screenshot

expectedreport
Hi Team,
I followed your setup procedure and i am able to generate the report. When i am opening the index.html file in all the browsers i am unable to see the report properly.For me The Pass/Fail column is not appearing in the report, its appearing as empty. Also total count of failed/passed is not appearing in the top right. Please see the screenshots attached both actual and expected. Please see the red highlighted part marked in the screenshot.
Note: I am using your latest version 0.16, all browsers latest version
Please let me what could be the issue. I tried my label best but hard luck. Please help me in this regard as i need the report urgently.

actualreport

Report is mostly blank

Hi, I am using this reporter for our project and it works perfectly fine when running locally. I have run it headless and non headless (Chrome only) and it always returns a nice report. However, I now am running my tests through a CI process (in Team Foundation Server) and the report is mostly blank. I have the green header with the "Results" text and that is it. There isn't anything else in the report, no screenshots or text of any kind. I tried this headless and non headless and got the same results. I have opened the report.html using notepad++ and compared it to the report on my local and the contents are the same. It just doesn't show anything when opening with Chrome (or any browser for that matter). Can you help? Thanks!

Spec duration time isn't showing. It just shows 'NaN s'

For some reason the spec time is not showing in the report.

image

I checked the javascript file in the data folder, it's showing time there.

image

I think the string 'secs' in the duration is causing the error since it's trying to divide a string by 1000.

Scroll jumps to the top when closing details modal windows

Hi there!

You guys did a great job with this tool. It is definitely the one I liked the most from the ones that I tried. If by any chance you happen to have a little bit of time, I hereby report an annoying issue that I have been experiencing:

Whenever you open a modal window to see the details of a test, the scroll would be reset to the top of the page. If the number of tests is large and you are interested in a couple of tests that failed down below, it is quite annoying to be sent back to the top.

I would like to add, if I may, that scrolling so much is on itself not optimal. Grouping the tests together by their top-level suite would be super awesome!

Cheers,
Daniel

Support for sharding?

Hey, love the reports been using them for a project. I'm wondering if they have support for sharding? Seems that when sharding is enabled, the reports overwrite themselves so that the reports only contain data from the last running thread

Reporter not working correctly

Preconditions:
Having Jasmine version:

jasmine v2.99.0, jasmine-core v2.99.0

Steps to recreate.

  1. Rerun your suite
  2. Open the reporter
    Expected: Reporter should have all the tests either as fail/success. Buttons should be present.http://prntscr.com/j4oo37
    Actual: Reporter is not working as described. Buttons are not present - therefore user cannot consume information whether test is pass or fail. - https://prnt.sc/j4oocy

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.