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
limitConcurrencyconfiguration. - Run tests locally or as part of Continuous Integration (CI) with your automated build server of choice.
- Generates clean html reports that allow you to quickly filter and zero in on test failures.
- Generate junit reports (provided by Postman's Newman).
- Configurable settings.json file with command line override capability.
- By default, all folders (and tests within) 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 and/or directories from the command line.
- Install Node.js (version >= 20) (recommended to install Node.js using node version manager)
- Install (and also to update) xRun:
npm install -g @schwabyio/xrun- Uninstall xRun
npm uninstall -g @schwabyio/xrunThe xRun tool requires a Postman project repo to be in the following structure:
└── <your-project-repo>/
├── <directory1-with-postman-json-files>/
├── <directory2-with-postman-json-files>/
...
├── <directoryN-with-postman-json-files>/
└── xrun/
├── exclude-list.json
└── settings.json
Note: You can only run the xrun CLI command from the root directory of <your-project-repo>.
Example repo in structure required by xRun (also runnable - try it out): xrun-example-repo
% xrun
__________________________________________________________________________________________________________________________________
xRun Ver. 3.0.0
__________________________________________________________________________________________________________________________________
USAGE: xrun <program-command> [--settingsKey settingsValue]
<program-command> - Required. Valid program-command values are:
g[et] - GET a list of all Postman collections from the project.
NOTE: collections from xrun/exclude-list.json ARE NOT included.
a[ll] - Run ALL Postman collections from the project.
NOTE: collections from xrun/exclude-list.json ARE NOT included.
<collectionAndOrDirectoryList> - Run one or more specific Postman collections from the project by
providing a comma seperated list of COLLECTION NAMEs and/or DIRECTORY NAMEs.
NOTE: collections from xrun/exclude-list.json ARE included.
--settingsKey settingsValue - Optional. Any number of settings overrides.
__________________________________________________________________________________________________________________________________All available settings (settings.json) are documented here.
Settings Order of Precedence (lowest to highest):
- Default value
- Local settings.json override
- Environment variables override
- Command line argument override
