Skip to main content

Pytest plugin that streams Allure test results to Testtrain in real time

Project description

testtrain-pytest-allure

A pytest plugin that streams Allure test results to Testtrain in real time using allure-python-commons hooks.

Each test result — including steps, parameters, attachments, and defect links — is posted to the Testtrain API immediately after the test finishes, with no file scanning required.

Installation

pip install testtrain-pytest-allure

Usage

pytest \
  --testtrain-url=http://localhost:3000 \
  --testtrain-auth-token=your-token \
  --alluredir=allure-results \
  --testtrain-run-id=testrun-id

The plugin activates automatically when all three --testtrain-* options are provided.

Options

Option Description
--testtrain-url Testtrain platform base URL
--testtrain-auth-token Bearer token for API authentication
--testtrain-run-id UUID of an existing testrun to report results to

How It Works

The plugin registers a listener into allure_commons.plugin_manager that implements the report_result hook. When Allure finalises a test (after teardown), the listener:

  1. Maps the TestResult object (status, steps, parameters, links) to the Testtrain API schema.
  2. Collects any in-memory attachment data captured during the test run.
  3. Sends everything to POST /api/tests (JSON or multipart when attachments are present).
  4. Retries up to 3 times on transient errors with exponential back-off.
  5. Stops the test session if all retries fail.

Development

cd plugins/testtrain-pytest-allure
uv sync
uv run pytest tests/

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

testtrain_pytest_allure-1.0.0b18.tar.gz (35.5 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

testtrain_pytest_allure-1.0.0b18-py3-none-any.whl (8.5 kB view details)

Uploaded Python 3

File details

Details for the file testtrain_pytest_allure-1.0.0b18.tar.gz.

File metadata

File hashes

Hashes for testtrain_pytest_allure-1.0.0b18.tar.gz
Algorithm Hash digest
SHA256 23d7e59517db2ddaf29e3323d30fe98ee86052a9c8115083d1cc29b8636585fd
MD5 3f55e8d4e4da23c052d95c74a2800a57
BLAKE2b-256 46bd65b1033d0f1cad08a7bcbbfaa6c84ff244f00e3f7021f992277d2934ca46

See more details on using hashes here.

Provenance

The following attestation bundles were made for testtrain_pytest_allure-1.0.0b18.tar.gz:

Publisher: pypi-publish.yml on njxqlus/testtrain

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file testtrain_pytest_allure-1.0.0b18-py3-none-any.whl.

File metadata

File hashes

Hashes for testtrain_pytest_allure-1.0.0b18-py3-none-any.whl
Algorithm Hash digest
SHA256 e0c82f74d11ca83e8517f5c3738112ae994e71ed7ffd6c6d5c8dc28e542d2410
MD5 e6ff3cb16ff3d1735de12f8f1b85f751
BLAKE2b-256 7c717a80e3eda55fdbc7fa997faf9aa8a4c2a80d96d390ac65a42066bd92be38

See more details on using hashes here.

Provenance

The following attestation bundles were made for testtrain_pytest_allure-1.0.0b18-py3-none-any.whl:

Publisher: pypi-publish.yml on njxqlus/testtrain

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

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