A tool for running Newman with parameters from an Excel file
Project description
excellentman
An experimental repo for probably writing tools to execute parameterized newman runs from data in spreadsheets
Install Newman
- Download and install Node.js.
- Then run
npm install
in your checkout
Installing
pip install excellentman
Usage
excellentman <EXCEL_FILE> <JSON_COLLECTION> <ENVIRONMENT_FILE>
Where:
- EXCEL_FILE: is a an excel file where each worksheet contains parameters to be passed into the postman requests
- JSON_COLLECTION: collection of requests, either a URL, or downloaded from postman
- ENVIRONMENT_FILE: an exported Postman environments file
Example
We've included example data for querying https://www.thecocktaildb.com, in the examples
directory.
examples/Cocktails.postman_collection.json
- A postman collection for querying the cocktail databaseexamples/Cocktails.xlsx
- An excel file with multiple worksheets for different types of cocktailsexamples/Production Cocktails.postman_environment.json
- An environment file for parameterizing the requests
You can run this:
excellentman examples/Cocktails.xlsx examples/Cocktails.postman_collection.json "examples/Production Cocktails.postman_environment.json"
Custom Field Handling
If you have data in your spreadsheet that needs to be transformed before it gets sent to the API you're working with, you can provide a python file of transformation functions, as in examples/custom_formats.py
.
We include a trivial example that lowercases the drink names, which you can demonstrate by running:
excellentman examples/Cocktails.xlsx examples/Cocktails.postman_collection.json "examples/Production Cocktails.postman_environment.json" --custom_formats=examples/custom_formats.py
Custom Report Formatting
This tool uses newman-reporter-htmlextra
to provide an HTML report of the results and can also support newman-reporter-xunit
to provide an XML report file. You can customize the template used for this report, and pass it in as follows:
excellentman examples/Cocktails.xlsx examples/Cocktails.postman_collection.json "examples/Production Cocktails.postman_environment.json" --custom_template=examples/example_reporter_template.hbs --xunit_file=xunit_reporter_example.xml
Publishing a new version
Update the version in setup.py.
Build the version to publish
python3 setup.py sdist bdist_wheel
Publish to testpypi (for now)
python3 -m twine upload --repository testpypi dist/*
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
File details
Details for the file excellentman-1.4.0.tar.gz
.
File metadata
- Download URL: excellentman-1.4.0.tar.gz
- Upload date:
- Size: 4.4 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/4.0.2 CPython/3.9.6
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | d930784651c4ab7a838721005cc5efa9eb118fd73c7b43806c4a936802249e08 |
|
MD5 | fd94e2af029481f32dd1eaa005dee69d |
|
BLAKE2b-256 | 0222225193ab2cce009b73a13780732075911d4b6dfa6e4bf4b8c7c093ed4919 |
File details
Details for the file excellentman-1.4.0-py3-none-any.whl
.
File metadata
- Download URL: excellentman-1.4.0-py3-none-any.whl
- Upload date:
- Size: 4.5 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/4.0.2 CPython/3.9.6
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 87f25616711ea3252a86d0d5049c505a33eac7451f7df34cc0d5bf9dddbfbb17 |
|
MD5 | 57bc4ba1057f8373589e021f7efa0405 |
|
BLAKE2b-256 | 2695aeae1c73beca7593757f87dc81d3e738ab5169355652126c740cb5424b9e |