xRun is a command line interface (CLI) app that extends Newman to enable your organization to run Postman tests with speed and at scale.
- Direct support for xtest.
- Run Postman tests in parallel by setting the
limitConcurrency
configuration. - Run tests locally or as part of Continuous Integration (CI) with your automated build server of choice.
- Generates beautiful html reports that allow you to quickly filter and zero in on test failures.
- Generate junit reports (provided by Postman's Newman).
- Get test summary and results sent to slack on your mobile device.
- Configurable settings.json file with command line override capability.
- By default, all folders (and tests within) from the configured xRunProjectPath are run. You can exclude folders using an exclusion list.
- Single out one or more tests to run by specifying a CSV list of test cases from the command line.
- Install Node.js (It's recommended to install Node.js using node version manager).
- Install xRun (See here if you receive EACCES permissions errors when installing packages globally):
npm install -g @schwabyio/xrun
- Create a local settings.json file (note the absolute path for step 4). Below is an example absolute path:
/Users/john/xrun/settings.json
See here for all available configurations. Below is an example settings.json file:
{
"limitConcurrency": 10,
"autoOpenTestResultHtml": true,
//"sendSummaryResultsToSlack": true,
"slackChannel": "C04XXXXXXXX",
"slackToken": "xoxb-XXXXXXXXXXXXXXXXXXXXXXXXX",
"slackHardAlertOnFailure": true,
"projectName": "xtest",
"environmentType": "qa",
"xRunProjectPath": "[PATH-TO-PROJECT-THAT-CONTAINS-POSTMAN-COLLECTIONS]"
}
- The first time you run 'xrun' on the command line you will be prompted for the absolute path to the settings.json file. Type or paste the absolute path to the settings.json you created in step 3 above. Below is an example:
% xrun
No settings path is currently set. Please provide one below.
What is the absolute path to your xrun settings.json file? /Users/john/xrun/settings.json
The path you have provided is '/Users/john/xrun/settings.json'
- To update to the latest version, run the following command:
npm update -g @schwabyio/xrun
- The first time you run 'xrun' on the command line you will be prompted for the absolute path to the settings.json file. Type or paste the absolute path to the settings.json you created during step 3 of the install above. Below is an example:
% xrun
No settings path is currently set. Please provide one below.
What is the absolute path to your xrun settings.json file? /Users/john/xrun/settings.json
The path you have provided is '/Users/john/xrun/settings.json'
% xrun
__________________________________________________________________________________________________________________________________
xRun Ver. 2.4.2
__________________________________________________________________________________________________________________________________
USAGE: xrun <program-command> [--settingsKey settingsValue]
<program-command> - Required. Valid program-command values are:
g[et] - GET a list of Postman collections within the given xRunProjectPath.
a[ll] - Run ALL Postman collections within the given xRunProjectPath.
<collectionList> - Run one or more Postman collections within the given xRunProjectPath
by providing a csv list of COLLECTION NAMEs.
--settingsKey settingsValue - Optional. Any number of settings overrides.
__________________________________________________________________________________________________________________________________
All available settings are documented here.
Settings Order of Precedence (lowest to highest):
- Default value
- Local settings.json override
- Environment variables override
- Command line argument override