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

newman-reporter-xunit

v2.4.4

Published

A Newman JUnit Reporter providing full reports (without aggregation of results) based on newman-reporter-junitfull package

Downloads

38,194

Readme

newman-reporter-xunit

JUnit reporter for Newman that provides the information about the collection run in JUnit format. This needs to be used in conjunction with Newman so that it can recognize JUnit reporting options.

JUnit Reporter based on XSD specified by Publish Test Results task for Azure Pipeline | TFS 2018 | TFS 2017 | TFS 2015

Different from newman-reporter-junit is using executions to have full report and no aggregated report. Please use newman-reporter-junit if you want the original aggregated results. This is based on [newman-reporter-junitfull] (https://github.com/martijnvandervlag/newman-reporter-junitfull) while adding some features

Install

The installation should be global if newman is installed globally, local otherwise. (Replace -g from the command below with -S for a local installation)

$ npm install -g newman-reporter-xunit

Usage

The examples provided in the usage are for showing the differences between newman-reporter-junit and this project.

Iteration (-n 2) is used to show the difference between original and full reports.

JUnit examples can be found here.

Original

Use newman-reporter-junit to execute.

In order to enable this reporter, specify junit in Newman's -r or --reporters option.

newman run https://www.getpostman.com/collections/631643-f695cab7-6878-eb55-7943-ad88e1ccfd65-JsLv -r junit --reporter-junit-export './examples/original/result.xml' -n 2

Full

In order to enable this reporter, specify xunit in Newman's -r or --reporters option.

newman run https://www.getpostman.com/collections/631643-f695cab7-6878-eb55-7943-ad88e1ccfd65-JsLv -r xunit --reporter-xunit-export './examples/full/result.xml' -n 2

Change request named

When using data file from newman, the same request, for each iteration, will have the same name, which is not very readable to distinguish the various test cases present in data file.

You can then set a special global variable which will change this name

pm.globals.set("__name__" + pm.info.iteration + pm.info.requestName, <new name>)

This way, the name can depend on data present (e.g: 'testName') in datafile

pm.globals.set("__name__" + pm.info.iteration + pm.info.requestName, pm.iterationData.get("testName"))

Change package name

It's the same principle as above, you can set the Iteration name (by default 'Iteration x') to an other name so that they are more readable

pm.globals.set("__name__" + pm.info.iteration, <new name>)

Options

With Newman CLI

| CLI Option | Description | |-------------|-------------------| | --reporter-xunit-export <path> | Specify a path where the output XML file will be written to disk. If not specified, the file will be written to newman/ in the current working directory. | | --reporter-xunit-hideSensitiveData | Ask reporter to remove any property containing 'user', 'password', 'token', 'usr', 'pwd', 'passwd' so that these data do not leak through report | | --reporter-xunit-excludeRequest <req1>,<req2> | Exlude the named requests from report | | --reporter-xunit-aggregate | Include failure and error count totals at the root testsuites node |

With Newman as a Library

The CLI functionality is available for programmatic use as well.

const newman = require('newman');

newman.run({
    collection: require('https://www.getpostman.com/collections/631643-f695cab7-6878-eb55-7943-ad88e1ccfd65-JsLv'), // can also provide a URL or path to a local JSON file.
    reporters: 'xunit',
    reporter: {
        xunit: {
            export: './examples/full/result.xml', // If not specified, the file will be written to `newman/` in the current working directory.
        }
    },
	iterationCount: 2
}, function (err) {
	if (err) { throw err; }
    console.log('collection run complete!');
});

Compatibility

| newman-reporter-xunit | newman | node | |:-------------------------:|:----------:|:--------:| | v1.0.0 | >= v4.0.0 | >= v6.x |

Troubleshooting

Reporter not found

The reporter and newman must be installed at the same level, the installation should be global if newman is installed globally, local otherwise.

Getting different JUnit output

You are most probably getting in-built reporter output used in older versions of newman, Please check the newman's compatibility section above.

If you are facing any other problem, please check the open issues or create new.

Community Support

Sign in using your Postman account to participate in the discussions and don't forget to take advantage of the search bar - the answer to your question might already be waiting for you! Don’t want to log in? Then lurk on the sidelines and absorb all the knowledge.

License

This software is licensed under Apache-2.0. Copyright Postdot Technologies, Inc. See the LICENSE file for more information.