Skip to main content

A pytest plugin for configuring workflow/pipeline tests using YAML files

Project description

pytest-workflow is a pytest plugin that aims to make pipeline/workflow testing easy by using yaml files for the test configuration.

For our complete documentation checkout our readthedocs page.

Installation

Pytest-workflow requires Python 3.5 or higher. It is tested on Python 3.5, 3.6 and 3.7. Python 2 is not supported.

  • Make sure your virtual environment is activated.

  • Install using pip pip install pytest-workflow

  • Create a tests directory in the root of your repository.

  • Create your test yaml files in the tests directory.

Quickstart

Run pytest from an environment with pytest-workflow installed. Pytest will automatically gather files in the tests directory starting with test and ending in .yaml or .yml.

For debugging pipelines running pytest -v --keep-workflow-wd is recommended. This will save the logs and the workflow directory so it is possible to check where the pipeline crashed. It will also give a better overview of succeeded and failed tests.

Below is an example of a YAML file that defines a test:

- name: Touch a file
  command: touch test.file
  files:
    - path: test.file

This will run touch test.file and check afterwards if a file with path: test.file is present. It will also check if the command has exited with exit code 0, which is the only default test that is run. Testing workflows that exit with another exit code is also possible.

Documentation for more advanced use cases can be found on our readthedocs page.

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

pytest-workflow-0.4.0.tar.gz (16.1 kB view details)

Uploaded Source

Built Distribution

pytest_workflow-0.4.0-py3-none-any.whl (31.9 kB view details)

Uploaded Python 3

File details

Details for the file pytest-workflow-0.4.0.tar.gz.

File metadata

  • Download URL: pytest-workflow-0.4.0.tar.gz
  • Upload date:
  • Size: 16.1 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/1.12.1 pkginfo/1.5.0.1 requests/2.21.0 setuptools/40.6.3 requests-toolbelt/0.8.0 tqdm/4.29.1 CPython/3.5.3

File hashes

Hashes for pytest-workflow-0.4.0.tar.gz
Algorithm Hash digest
SHA256 9332a0fad51c61e307d672fbffea7916c84192b9ff2da9727261d86b618c6c40
MD5 056e8a7e27f62fd1d1d4be186dd1119e
BLAKE2b-256 e8bb4b21ad68a1bb443377d24de5555ef45aafdf3b3de473dfadd5b2f0a65de3

See more details on using hashes here.

File details

Details for the file pytest_workflow-0.4.0-py3-none-any.whl.

File metadata

  • Download URL: pytest_workflow-0.4.0-py3-none-any.whl
  • Upload date:
  • Size: 31.9 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/1.12.1 pkginfo/1.5.0.1 requests/2.21.0 setuptools/40.6.3 requests-toolbelt/0.8.0 tqdm/4.29.1 CPython/3.5.3

File hashes

Hashes for pytest_workflow-0.4.0-py3-none-any.whl
Algorithm Hash digest
SHA256 a636ca70ec539767057941130e2783230397e932ebd7989ef4c9d8e5b629f936
MD5 08587b48b1df096e446ad3fdc9b10936
BLAKE2b-256 c8e1376aeb6318e7d0a6533b21d53396e876f14837231c274462001cecaa1ca2

See more details on using hashes here.

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