allure-pytest-ext


Nameallure-pytest-ext JSON
Version 2.13.4 PyPI version JSON
download
home_pageNone
SummaryExtensions for allure-pytest: propagate step failures and aggregate step failures
upload_time2025-08-22 17:55:28
maintainerNone
docs_urlNone
authorNone
requires_python>=3.8.1
licenseMIT
keywords aggregate allure propagate pytest report testing
VCS
bugtrack_url
requirements No requirements were recorded.
Travis-CI No Travis.
coveralls test coverage No coveralls.
            allure-pytest-ext
==================

Extensions for `allure-pytest==2.13.3` adding:

- `with allure.step("...", propagate=True)`: if any exception happens inside the step and is caught by user code,
  the step still fails and the original error re-raises after the step exits (unless running inside an aggregate step).
- `with allure.aggregate_step("...")`: runs all child steps even if some fail; after all children finish, raises a single
  aggregated exception if any child failed.

Requirements
------------

- Python 3.8+
- `allure-pytest==2.13.3`
- Managed with `uv`

Install
-------

```bash
uv add allure-pytest-ext
```

Usage
-----

```python
import allure

# Propagating a caught error
with pytest.raises(ValueError):
    with allure.step("propagate caught", propagate=True):
        try:
            raise ValueError("boom")
        except ValueError:
            pass  # The step fails and the error is re-raised after the step ends

# Aggregating child failures
with pytest.raises(Exception):
    with allure.aggregate_step("aggregate children"):
        with allure.step("child 1"):
            raise ValueError("first")
        with allure.step("child 2"):
            raise RuntimeError("second")
```

Development
-----------

```bash
uv sync --all-extras --dev
uv run pytest -q
uv run black --check src tests
uv run flake8 src tests
uv run mypy --strict src tests
```



            

Raw data

            {
    "_id": null,
    "home_page": null,
    "name": "allure-pytest-ext",
    "maintainer": null,
    "docs_url": null,
    "requires_python": ">=3.8.1",
    "maintainer_email": null,
    "keywords": "aggregate, allure, propagate, pytest, report, testing",
    "author": null,
    "author_email": "Rami Hasan <hsn.rami@gmail.com>",
    "download_url": "https://files.pythonhosted.org/packages/52/fd/749b90a325206be4ed4a35ea3fdef603084814d6d3c6b086c83e77522892/allure_pytest_ext-2.13.4.tar.gz",
    "platform": null,
    "description": "allure-pytest-ext\n==================\n\nExtensions for `allure-pytest==2.13.3` adding:\n\n- `with allure.step(\"...\", propagate=True)`: if any exception happens inside the step and is caught by user code,\n  the step still fails and the original error re-raises after the step exits (unless running inside an aggregate step).\n- `with allure.aggregate_step(\"...\")`: runs all child steps even if some fail; after all children finish, raises a single\n  aggregated exception if any child failed.\n\nRequirements\n------------\n\n- Python 3.8+\n- `allure-pytest==2.13.3`\n- Managed with `uv`\n\nInstall\n-------\n\n```bash\nuv add allure-pytest-ext\n```\n\nUsage\n-----\n\n```python\nimport allure\n\n# Propagating a caught error\nwith pytest.raises(ValueError):\n    with allure.step(\"propagate caught\", propagate=True):\n        try:\n            raise ValueError(\"boom\")\n        except ValueError:\n            pass  # The step fails and the error is re-raised after the step ends\n\n# Aggregating child failures\nwith pytest.raises(Exception):\n    with allure.aggregate_step(\"aggregate children\"):\n        with allure.step(\"child 1\"):\n            raise ValueError(\"first\")\n        with allure.step(\"child 2\"):\n            raise RuntimeError(\"second\")\n```\n\nDevelopment\n-----------\n\n```bash\nuv sync --all-extras --dev\nuv run pytest -q\nuv run black --check src tests\nuv run flake8 src tests\nuv run mypy --strict src tests\n```\n\n\n",
    "bugtrack_url": null,
    "license": "MIT",
    "summary": "Extensions for allure-pytest: propagate step failures and aggregate step failures",
    "version": "2.13.4",
    "project_urls": {
        "Homepage": "https://github.com/",
        "Repository": "https://github.com/"
    },
    "split_keywords": [
        "aggregate",
        " allure",
        " propagate",
        " pytest",
        " report",
        " testing"
    ],
    "urls": [
        {
            "comment_text": null,
            "digests": {
                "blake2b_256": "80aa152e0296dd4d19b69b3d12769dff8321f1a99d0d91ca142ed4c9f5aa6805",
                "md5": "74cb0e4de2eb9037de2336dbe57873dd",
                "sha256": "a28ed7a3c3ca6d4d2f5a2f987ad543c76876f42e23ac7492b9984134cf99c2b3"
            },
            "downloads": -1,
            "filename": "allure_pytest_ext-2.13.4-py3-none-any.whl",
            "has_sig": false,
            "md5_digest": "74cb0e4de2eb9037de2336dbe57873dd",
            "packagetype": "bdist_wheel",
            "python_version": "py3",
            "requires_python": ">=3.8.1",
            "size": 10734,
            "upload_time": "2025-08-22T17:55:27",
            "upload_time_iso_8601": "2025-08-22T17:55:27.240071Z",
            "url": "https://files.pythonhosted.org/packages/80/aa/152e0296dd4d19b69b3d12769dff8321f1a99d0d91ca142ed4c9f5aa6805/allure_pytest_ext-2.13.4-py3-none-any.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": null,
            "digests": {
                "blake2b_256": "52fd749b90a325206be4ed4a35ea3fdef603084814d6d3c6b086c83e77522892",
                "md5": "b9ccdf297379f39e54b5ebbd4170f16c",
                "sha256": "2b75df3e0b06112e93ec7bcfaeaa1f625123324f79e28bc15a34f2e91c32f23a"
            },
            "downloads": -1,
            "filename": "allure_pytest_ext-2.13.4.tar.gz",
            "has_sig": false,
            "md5_digest": "b9ccdf297379f39e54b5ebbd4170f16c",
            "packagetype": "sdist",
            "python_version": "source",
            "requires_python": ">=3.8.1",
            "size": 15205,
            "upload_time": "2025-08-22T17:55:28",
            "upload_time_iso_8601": "2025-08-22T17:55:28.232187Z",
            "url": "https://files.pythonhosted.org/packages/52/fd/749b90a325206be4ed4a35ea3fdef603084814d6d3c6b086c83e77522892/allure_pytest_ext-2.13.4.tar.gz",
            "yanked": false,
            "yanked_reason": null
        }
    ],
    "upload_time": "2025-08-22 17:55:28",
    "github": false,
    "gitlab": false,
    "bitbucket": false,
    "codeberg": false,
    "lcname": "allure-pytest-ext"
}
        
Elapsed time: 1.89575s