Socket
Socket
Sign inDemoInstall

jasmine-json-test-reporter

Package Overview
Dependencies
0
Maintainers
1
Versions
1
Alerts
File Explorer

Advanced tools

Install Socket

Detect and block malicious and high-risk dependencies

Install

    jasmine-json-test-reporter

Write Jasmine test results to disk in JSON format


Version published
Weekly downloads
2.4K
increased by2.01%
Maintainers
1
Install size
5.12 kB
Created
Weekly downloads
 

Readme

Source

jasmine-json-test-reporter

Jasmine Custom Reporter Documentation

What is it?

This project is a custom Jasmine reporter that will output spec results, organized by suite, to a file location you specify, as JSON.

Why?

I had a project using Jasmine/Protractor that required that I have a parsable version of the test results. The custom Jasmine reporters I could find only gave options to output to the common formats (JUnit, NUnit, TeamCity, HTML). Since I need to parse this data within JavaScript, it made sense to have a JSON representation of my test results.

Protractor does technically provide an option to export results as JSON using the resultJsonOutputFile option, but the data provided is limited. Additionally, I had a need to run Protractor multiple times and dynamically assign the test results output filename each time, which cannot currently be done with Protractor (config can't be modified at run-time).

How to use

Install

npm install jasmine-json-test-reporter --save-dev

Jasmine Usage

var JSONReporter = require('jasmine-json-test-reporter');
jasmine.getEnv().addReporter(new JSONReporter({
	file: 'jasmine-test-results.json',
	beautify: true,
	indentationLevel: 4 // used if beautify === true
}));

Protractor/Jasmine Usage

// in Protractor conf
var JSONReporter = require('jasmine-json-test-reporter');

...

framework: 'jasmine2',
onPrepare: function() {
	jasmine.getEnv().addReporter(new JSONReporter({
		file: 'jasmine-test-results.json',
		beautify: true,
		indentationLevel: 4 // used if beautify === true
	}));
}

Example Output w/ Default Options

{
    "suite1": {
        "id": "suite1",
        "description": "example suite",
        "fullName": "example suite",
        "failedExpectations": [],
        "status": "finished",
        "specs": [
            {
                "id": "spec0",
                "description": "should test something",
                "fullName": "example suite should test something",
                "failedExpectations": [],
                "passedExpectations": [
                    {
                        "matcherName": "toBe",
                        "message": "Passed.",
                        "stack": "",
                        "passed": true
                    },
                    {
                        "matcherName": "toBe",
                        "message": "Passed.",
                        "stack": "",
                        "passed": true
                    }
                ],
                "status": "passed"
            }
        ]
    }
}

Keywords

FAQs

Last updated on 30 Apr 2015

Did you know?

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Install

Related posts

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc