Skip to main content

Plugin to run pystack after a timeout for a test suite.

Project description

pytest-pystack

CI PyPI - Python Version PyPI PyPI - Downloads Code Style

A pytest plug-in for easy integration of PyStack in your test suite.

It can be used to automatically dump the stack trace of a hanging test in your suite.

See PyStack for further information about the tool.

Installation

To install the PyStack pytest plug-in, just run the following command in your venv:

python -m pip install pytest-pystack

Quick Start

After you have installed the pytest plug-in, you can have PyStack monitor your test suite and output a stack trace if a test takes more than 5 seconds, simply by running pytest with argument --pystack-threshold=5.

Configuration

The PyStack plug-in can be configured via the command line with the following options:

  • --pystack-threshold: Enables the plug-in and monitors all tests, generating a stack trace if they take longer than the specified threshold. Note, this neither stops nor fails the test case after the specified threshold.
  • --pystack-output-file: Appends PyStack output to a file.
  • --pystack-path: Path to the pystack executable.
  • --pystack-args: Additional args to pass to pystack remote <pid>, like --native or --native-all.

And through any pytest config file, see an example of pyproject.toml:

[tool.pytest.ini_options]
pystack_threshold=60
pystack_path="custom-version-of-pystack"
pystack_output_file="./pystack.log"
pystack_args="--native"

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-pystack-1.0.0.tar.gz (16.4 kB view hashes)

Uploaded Source

Built Distribution

pytest_pystack-1.0.0-py3-none-any.whl (13.9 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