Skip to main content

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

Project description

Allure Common API

Release Status Downloads

The package contains classes and functions for users of Allure Report. It can be used to enhance reports using an existing Allure adapter or to create new adapters.

Allure Report logo


User's API

Install an adapter that suits your test framework. You can then add more information to the report by using functions from the allure module.

Decorators API

Use these functions as decorators of your own functions, e.g.:

import allure

@allure.title("My test")
def test_fn():
    pass

The full list of decorators:

  • allure.title
  • allure.description
  • allure.description_html
  • allure.label
  • allure.severity
  • allure.epic
  • allure.feature
  • allure.story
  • allure.suite
  • allure.parent_suite
  • allure.sub_suite
  • allure.tag
  • allure.id
  • allure.manual
  • allure.link
  • allure.issue
  • allure.testcase
  • allure.step

Refer to the adapter's documentation for the information about what decorators are supported and what functions they can be applied to.

Runtime API

Most of the functions of Runtime API can be accessed via allure.dynamic.*. Call them at runtime from your code.

The full list includes:

  • allure.dynamic.title
  • allure.dynamic.description
  • allure.dynamic.description_html
  • allure.dynamic.label
  • allure.dynamic.severity
  • allure.dynamic.epic
  • allure.dynamic.feature
  • allure.dynamic.story
  • allure.dynamic.suite
  • allure.dynamic.parent_suite
  • allure.dynamic.sub_suite
  • allure.dynamic.tag
  • allure.dynamic.id
  • allure.dynamic.manual
  • allure.dynamic.link
  • allure.dynamic.issue
  • allure.dynamic.testcase
  • allure.dynamic.parameter
  • allure.attach
  • allure.attach.file
  • allure.step

Refer to the adapter's documentation for the information about what functions are supported and where you can use them.

Adapter API

You may use allure-pytest-commons to build your own Allure adapter. The key elements of the corresponding API are:

  • allure_python_commons.model2: the object model of Allure Report.
  • allure_python_commons.logger: classes that are used to emit Allure Report objects (tests, containers, attachments):
    • AllureFileLogger: emits to the file system.
    • AllureMemoryLogger: collects the objects in memory. Useful for testing.
  • allure_python_commons.lifecycle.AllureLifecycle: an implementation of Allure lifecycle that doesn't isolate the state between threads.
  • allure_python_commons.reporter.AllureReporter: an implementation of Allure lifecycle that supports some multithreaded scenarios.

A new version of the API is likely to be released in the future as we need a decent support for multithreaded and async-based concurrency (see here and here).

Project details


Release history Release notifications | RSS feed

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

allure-python-commons-2.13.5.tar.gz (12.9 kB view hashes)

Uploaded Source

Built Distribution

allure_python_commons-2.13.5-py3-none-any.whl (15.7 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