newman-reporter-agent-js-postman 5.0.4
Install from the command line:
Learn more about npm packages
$ npm install @reportportal/newman-reporter-agent-js-postman@5.0.4
Install via package.json:
"@reportportal/newman-reporter-agent-js-postman": "5.0.4"
About this version
Agent to integrate Postman (based on Newman collection runner) with ReportPortal.
- More about Postman
- More about Newman
- More about ReportPortal
The installation should be global if newman is installed globally, otherwise - local (replace -g from the command below with -S for a local installation).
$ npm install -g @reportportal/newman-reporter-agent-js-postman
There are two ways to enable this reporter - with command line or programmatically.
To enable this reporter you have to specify agent-js-postman
in Newman's -r
or --reporters
option.
$ newman run https://postman-echo.com/status/200 \
-r @reportportal/agent-js-postman \
--reporter-@reportportal/agent-js-postman-debug=true \
--reporter-@reportportal/agent-js-postman-endpoint=http://your-instance.com:8080/api/v1 \
--reporter-@reportportal/agent-js-postman-token=00000000-0000-0000-0000-000000000000 \
--reporter-@reportportal/agent-js-postman-launch=LAUNCH_NAME \
--reporter-@reportportal/agent-js-postman-project=PROJECT_NAME \
--reporter-@reportportal/agent-js-postman-description=LAUNCH_DESCRIPTION \
--reporter-@reportportal/agent-js-postman-attributes=launchKey:launchValue;launchValueTwo \
-x
Pay attention that you must add -x or --suppress-exit-code parameter while running newman using CLI.
const newman = require("newman");
newman.run(
{
collection: "./collections/newman-test_collection.json",
reporters: "@reportportal/agent-js-postman",
reporter: {
"@reportportal/agent-js-postman": {
endpoint: "http://your-instance.com:8080/api/v1",
token: "00000000-0000-0000-0000-000000000000",
launch: "LAUNCH_NAME",
project: "PROJECT_NAME",
description: "LAUNCH_DESCRIPTION",
attributes: [
{
"key": "launchKey",
"value": "launchValue"
},
{
"value": "launchValue"
},
],
mode: 'DEFAULT',
debug: true
}
}
},
function(err) {
if (err) {
throw err;
}
console.log("collection run complete!");
}
);
// To run several collections
// Note, this will create multiple launches that you can merge into one manually via the UI
fs.readdir('./collections_folder_path', (err, files) => {
if (err) {
throw err;
}
files.forEach((file) => {
// setup newman.run()
});
});
Both CLI and programmatic runs support following options:
Parameter | Description |
---|---|
token | User's Report Portal token from which you want to send requests. It can be found on the profile page of this user. |
endpoint | URL of your server. For example 'https://server:8080/api/v1'. |
launch | Name of launch at creation. |
project | The name of the project in which the launches will be created. |
description | Text description of launch. |
attributes | Attributes of launch. Programmatically - [{ "key": "YourKey", "value": "YourValue" }] with CLI - "YourKey:YourValue;YourValueTwo" |
rerun | Enable rerun |
rerunOf | UUID of launch you want to rerun. If not specified, report portal will update the latest launch with the same name. |
debug | Determines whether newman's run should be logged in details. |
mode | Launch mode. Allowable values DEFAULT (by default) or DEBUG. |
restClientConfig | The object with agent property for configure http(s) client, may contain other client options eg. timeout . |
skippedIssue |
Default: true. ReportPortal provides feature to mark skipped tests as not 'To Investigate' items on WS side. Parameter could be equal boolean values: TRUE - skipped tests considered as issues and will be marked as 'To Investigate' on Report Portal. FALSE - skipped tests will not be marked as 'To Investigate' on application. |
- To report attributes for suite you should use collection variables.
VARIABLE | INITIAL VALUE | CURRENT VALUE |
---|---|---|
rp.attributes | keySuiteOne:valueSuiteOne | keySuiteOne:valueSuiteOne |
- To report attributes for tests inside of Pre-request Script you should use the next method
pm.environment.set
Parameter | Required | Description | Examples |
---|---|---|---|
namespace | true | "string" - namespace, must be equal to the rp.attributes | "rp.attributes" |
attributes | true | "string" - contains set of pairs key:value | "keyOne:valueOne;valueTwo;keyThree:valueThree" |
pm.environment.set("rp.attributes", "keyOne:valueOne;valueTwo;keyThree:valueThree");
- Step doesn't support reporting with attributes
Both suites and tests support description. For reporting with description you should click on Edit in your collection and in the description column enter the text you need
- Step doesn't support reporting with description
status must be equal to one of the following values: passed, failed, stopped, skipped, interrupted, cancelled, info, warn.
- To finish launch/suite with status you should use collection variables
VARIABLE | INITIAL VALUE | CURRENT VALUE |
---|---|---|
rp.launchStatus (for launch) rp.status (for suite) |
your status | your status |
- To finish tests you should use environment variables inside of Pre-request Script
pm.environment.set("rp.status", "status");
- To finish steps with statuses you should use local variables
pm.variables.set("rp.status", "status");
It is important that the code line above has to start from the new line and you shouldn't forget about semicolon after it
For both tests or steps, this is true
Parameter | Required | Description | Examples |
---|---|---|---|
namespace | true | "string" - namespace, must be equal to the rp.status | "rp.status" |
status | true | "string" - status | "passed" |
You can use the following methods to report logs with different log levels:
- console.log("launch/suite/test", "message");
- console.error("launch/suite/test", "message");
- console.debug("launch/suite/test", "message");
- console.warn("launch/suite/test", "message");
- console.info("launch/suite/test", "message");
Parameter | Required | Description | Examples |
---|---|---|---|
namespace | true | "string" - namespace, must be equal to the launch, suite or test depends on where you want to report | "test" |
message | true | "string" - message | "your message" |
- Step doesn't support logs reporting
- To report suite with test case id you should use collection variables
VARIABLE | INITIAL VALUE | CURRENT VALUE |
---|---|---|
rp.testCaseId | yourSuiteTestCaseId | yourSuiteTestCaseId |
- To report tests with test case id you should use environment variables inside of Pre-request Script
pm.environment.set("rp.testCaseId", "yourTestCaseId");
- To report steps with test case id you should use local variables
pm.variables.set("rp.testCaseId", "stepTestCaseId");
It is important that the code line above has to start from the new line and you shouldn't forget about semicolon after it
For both tests or steps, this is true
Parameter | Required | Description | Examples |
---|---|---|---|
namespace | true | "string" - namespace, must be equal to the rp.testCaseId | "rp.testCaseId" |
testCaseId | true | "string" - test case id value | "yourTestCaseId" |
Licensed under the Apache 2.0 license (see the LICENSE.txt file).
Details
- newman-reporter-agent-js-postman
- reportportal
- over 1 year ago
- Apache-2.0
- 7 dependencies
Assets
- newman-reporter-agent-js-postman-5.0.4.tgz
Download activity
- Total downloads 0
- Last 30 days 0
- Last week 0
- Today 0