Skip to content

sebvelay/newman-reporter-customxray

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

6 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

newman-reporter-customxray

A Newman Custom Xray reporter is designed to easily import your result of end to end test into XRAY. It display the result of the test on xray for 1 test for a complete collection, with all errors related to a collection.

It's a fork of newman Junit XRAY reporter.

Demo

The generation of the xml look like :

<?xml version="1.0" encoding="UTF-8"?>
<testsuites tests="1">
  <testsuite name="COLLECTION-NAME" tests="11" timestamp="2022-09-06T10:14:11.848" failures="1">
    <testcase classname="CollectionName" name="COLLECTION-NAME">
      <failure type="AssertionFailure" message="expected response to have status code 302 but got 200">
        <![CDATA[Error message: expected response to have status code 302 but got 200.]]>
        <![CDATA[Stacktrace: AssertionError: expected response to have status code 302 but got 200
   at Object.eval sandbox-script.js:1:11).]]>
      </failure>
    </testcase>
  </testsuite>
</testsuites>

The result of xray of multiples generation look like :

To upload on xray, you can use this curl command :

content=$(cat result/xray/result.xml)"

curl -X POST -H 'Authorization: Bearer ${token}' -H 'Content-Type: application/xml' --data-raw '$content' '${baseUrl}/api/v2/import/execution/junit?testExecKey=${testExecutionKey}'\"

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-customxray

Usage

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

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

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

Options

With Newman CLI

CLI Option Description
--reporter-customxray-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.

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: 'customxray',
    reporter: {
        junitxray: {
            export: './examples/xray/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-customxray 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.

License

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

About

No description, website, or topics provided.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published