Skip to content
/ xrun Public
forked from schwabyio/xrun

Test your APIs with speed, simplicity, and at scale.

License

Notifications You must be signed in to change notification settings

chyde80/xrun

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

22 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

xRun Image

GitHub license npm version code coverage

Table of Contents


xRun - CLI Runner For Postman

Overview

xRun is a command line interface (CLI) app that extends Newman to enable your organization to run Postman tests with speed and at scale.

Features

  • Direct support for xtest!
  • Run Postman tests in parallel.
  • 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.

Demos

Demo Primary Commands

TODO

Demo Reporting

TODO


Installation Steps

  1. Install Node.js (It's recommended to install Node.js using node version manager).
  2. Install xRun (See here if you receive EACCES permissions errors when installing packages globally):
npm install -g @schwabyio/xrun
  1. 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]"
}
  1. 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. 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

Usage

% xrun
__________________________________________________________________________________________________________________________________
                                                                                                                                  
                                                         xRun Ver. 2.2.0
__________________________________________________________________________________________________________________________________


   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.

__________________________________________________________________________________________________________________________________

Settings

All available settings are documented here

Settings Order of Precedence (lowest to highest):

  1. Default value
  2. Local settings.json override
  3. Environment variables override
  4. Command line argument override

About

Test your APIs with speed, simplicity, and at scale.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • JavaScript 83.8%
  • Handlebars 16.2%