skillfed

allure-python-commons

Contains the API for end users as well as helper functions and classes to build Allure adapters for Python test frameworks

allure-python-commons v2.16.0 8.9M downloads/30d#1,574 on PyPI813
Permissive license Apache-2.0 Active released

What it is and what it does

allure-python-commons is the foundational library for Allure Report integration in Python. It provides the object model, lifecycle management, and common API that both end users and framework adapter developers rely on. End users import it to decorate test functions with metadata (title, severity, epic, feature, story, tags, links) and to attach runtime information like parameters and files. Adapter developers use internal APIs—the model classes, file/memory loggers, and lifecycle implementations—to build test framework plugins that emit Allure report data.

The package is lightweight, with only attrs and pluggy as runtime dependencies, and maintains active development with support for Python 3.8 through 3.13. It sits between test frameworks and the Allure reporting engine, translating test metadata into the structured format Allure Report consumes. Most users install it indirectly as a dependency of an Allure adapter, though it can be used directly to build custom adapters.

Use it for:

  • Decorate test functions with allure.title, allure.severity, and allure.epic to organize and prioritize reports
  • Attach screenshots, logs, or JSON payloads to test results at runtime using allure.attach for debugging
  • Build a custom Allure adapter using the model2 and lifecycle APIs for non-standard test frameworks
  • Dynamically add test metadata (description, tags, links) during test execution via allure.dynamic.*
  • Emit test results and containers to Allure Report format for integration with CI/CD dashboards

Worth the install?

AI-flagged interpretation of the facts on this page — verify before relying

Provides the common API and object model for Allure Report, enabling test framework adapters and end users to enhance test reports with metadata, attachments, and structured test information.

Yes. This is a stable, actively maintained library in production use (top 5000 PyPI packages) with no known vulnerabilities, permissive licensing, and minimal dependencies. Install it if you are building an Allure adapter or using an Allure-integrated test framework.

Install

allure-python-commons on PyPI

pip

pip install allure-python-commons

uv

uv add allure-python-commons

poetry

poetry add allure-python-commons

Installing allure-python-commons

Before you install

Low friction install with only two runtime dependencies (attrs, pluggy). Actively maintained with recent commits and stable production status.

License in practice

Licensed under Apache-2.0 (permissive), allowing free use, modification, and distribution with minimal restrictions—suitable for both open-source and commercial projects.

Quickstart

pip install allure-python-commons

import allure

@allure.title("My test")
def test_example():
    allure.attach("test data", name="info")

Requires Python 3.6 or later. Typically used as a dependency of an Allure adapter rather than standalone.

Verify before relying

  • Whether the package works effectively in multithreaded scenarios beyond what AllureReporter currently supports
  • Specific async/await concurrency support status relative to the open issues mentioned in the description

Package facts

License Apache-2.0 (permissive)
Python support supports the current Python release (>=3.6)
Install friction low — pure-Python wheel
Runtime dependencies 2 — attrs, pluggy
Maintenance actively maintained — 109 days since the last release
Last repo commit
First released
Downloads 8,935,381/month — #1,574 on PyPI (30-day window, as of 2026-08-14)
Known vulnerabilities none known (OSV.dev, checked 2026-08-14)

Evidence: allure_python_commons-2.16.0-py3-none-any.whl

Keywords: allure, reporting, report-engine

Development Status :: 5 - Production/StableIntended Audience :: DevelopersLicense :: OSI Approved :: Apache Software LicenseProgramming Language :: Python :: 3Programming Language :: Python :: 3 :: OnlyProgramming Language :: Python :: 3.10Programming Language :: Python :: 3.11Programming Language :: Python :: 3.12Programming Language :: Python :: 3.13Programming Language :: Python :: 3.8Programming Language :: Python :: 3.9Topic :: Software Development :: Quality AssuranceTopic :: Software Development :: Testing

Tags

allure report apitest report metadataallure adapter commonstest reporting frameworkallure python commonstest report enhancementallure lifecycle management
test-reportingallure-frameworkadapter-api

More Testing packages