Skip to main content

A library to use postman collections V2.1 in python.

Project description

postman2py

Upload Python Package

postman2py is a library for Postman that run Postman's collections.

Originaly was forked from https://github.com/k3rn3l-p4n1c/postpython and https://github.com/matkapi/postpy2 Added few updates related to Postman collection import and urlencoded request type.

Why use postman2py instead of postman codegen?

  • No hardcoded variables
  • If your team use postman collection for testing and you want to extend testing by integrating some calculation or etc.

How to install?

postman2py is available on PyPI and you can install it using pip:

$ pip install postman2py

How to use?

Import postman2py

from postman2py.core import PostPython

runner = postman2py('/path/to/collection/postman_collection.json')

# runner.default.<request_name> # if no folders in collection
# runner.<folder_name>.<request_name> # if folders exist in collection

response = runner.default.get_request()
print(response.json())
print(response.status_code)

Load enviroment variables

In postman2py you can load enviroment variables from postman enviroment files

pp.environments.load('environments/postman_environment.json')

Set environment variable

runner.environments.update({'BASE_URL': 'http://127.0.0.1:5000'})
runner.environments.update({'PASSWORD': 'test', 'EMAIL': 'you@email.com'})

AttributeError

postman2py try to correct your mistake if you spell a function or folder wrong it will suggest you the closest name.

>>> response = runner.RequestMethods.get_requasts()

Traceback (most recent call last):
File "test.py", line 11, in <module>
response = runner.RequestMethods.get_requasts()
File "/usr/local/lib/python3.5/site-packages/postman2py/core.py", line 73, in **getattr**
'Did you mean %s' % (item, self.name, similar))

AttributeError: get_requasts request does not exist in RequestMethods folder.
Did you mean get_request

You can also use help() method to print all available requests.

>>> runner.help()
>>> Posible requests:
>>> runner.AuthOthers.hawk_auth()
>>> runner.AuthOthers.basic_auth()
>>> runner.AuthOthers.oauth1_0_verify_signature()
>>> runner.RequestMethods.get_request()
>>> runner.RequestMethods.put_request()
>>> runner.RequestMethods.delete_request()
>>> runner.RequestMethods.post_request()
>>> runner.RequestMethods.patch_request()

or

>>> runner.RequestMethods.help()
>>> runner.RequestMethods.delete_request()
>>> runner.RequestMethods.patch_request()
>>> runner.RequestMethods.get_request()
>>> runner.RequestMethods.put_request()
>>> runner.RequestMethods.post_request()

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

postman2py-0.0.2.tar.gz (5.2 kB view hashes)

Uploaded Source

Built Distribution

postman2py-0.0.2-py3-none-any.whl (17.7 kB view hashes)

Uploaded Python 3

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page