Orangebeard listener for Newman (Postman CLI).)
npm install @orangebeard-io/newman-reporter-orangebeardCreate orangebeard.json (in your collection's folder (or above))
{
"endpoint": "https://XXX.orangebeard.app",
"accessToken": "00000000-0000-0000-0000-00000000",
"project": "my_project_name",
"testset": "My Test Set Name"
}From the command line:
newman run ./postman-collection.json -r @orangebeard-io/orangebeardOr configure using the CLI (without orangebeard.json):
newman run ./collection.json -r @orangebeard-io/orangebeard \
--reporter-@orangebeard-io/orangebeard-endpoint=https://my.orangebeard.app \
--reporter-@orangebeard-io/orangebeard-token=00000000-0000-0000-00000000 \
--reporter-@orangebeard-io/orangebeard-testset=testset_name \
--reporter-@orangebeard-io/orangebeard-project=project_name \
--reporter-@orangebeard-io/orangebeard-description=description \
--reporter-@orangebeard-io/orangebeard-attributes=key:value;secondkey:secondvalue;singleTagNote: Description and attributes are optional.
Or programmatically:
const newman = require('newman');
newman.run(
{
collection: './collection.json',
reporters: '@orangebeard-io/orangebeard',
reporter: {
'@orangebeard-io/orangebeard': {
endpoint: 'https://my.orangebeard.app',
token: '00000000-0000-0000-0000-000000000000',
testset: 'testset_name',
project: 'project_name',
description: 'description',
attributes: [
{
key: 'key',
value: 'val',
},
{
value: 'singleTag',
},
],
},
},
},
function (err) {
if (err) {
throw err;
}
console.log('collection run complete!');
},
);If you use the Postman CLI with its JSON reporter, you can import those JSON reports into Orangebeard using the CLI utility that ships with this package.
From your API project, run the Postman CLI with JSON output enabled (example):
postman collection run ./VAmPI.postman_collection.json \
--reporters json \
--reporter-json-export ./postman-cli-reports/VAmPI-report.jsonThis produces a JSON file containing a run object with executions, similar to the examples under example_pm_collection/postman-cli-reports/ in this repository.
From this package's directory (with your Orangebeard configuration already set up, e.g. via orangebeard.json or environment):
npm run report:postman-cli-json -- ./example_pm_collection/postman-cli-reports/VAmPI-report.jsonOr, if the package is installed globally or as a project dependency:
postman-cli-to-orangebeard ./example_pm_collection/postman-cli-reports/VAmPI-report.jsonThe utility also works with the following arguments:
postman-cli-to-orangebeard ./example_pm_collection/postman-cli-reports/VAmPI-report.json \
--endpoint=https://my.orangebeard.app \
--token=00000000-0000-0000-00000000 \
--testset=testset_name \
--project=project_name \
--description=description \
--attributes=key:value;secondkey:secondvalue;singleTag \
--attachments-path=path_to_attachmentsThe utility will:
- Create an Orangebeard test run in either Postman or Newman style, which is automatically detected by the reporter.
- Create one Orangebeard test per request in the JSON report and in case of Newman it will also copy the folder structure.
- Log request and response metadata in Markdown, including headers and JSON/XML bodies in fenced code blocks.
- Map Postman tests/assertions to Orangebeard steps, attaching error messages and stack traces when they fail.
- Use the timing information from the report to reconstruct start/end timestamps per test and for the entire run.
-
- Adding attachments requires the files to be in the following format: {pm.info.requestId}_{pm.test.name}.anyextension