Skip to content

Pytest Plugin

The pytest extension is organized under several subpackages:

Checker

zelos_sdk.pytest.checker

Checker plugin for pytest.

Use via:

pytest_plugins = ["zelos_sdk.pytest.checker"]

check(request)

checker object

Trace

zelos_sdk.pytest.trace

Zelos Cloud trace plugin

Use via:

pytest_plugins = ["zelos_sdk.pytest.trace"]

pytest_addhooks(pluginmanager)

This example assumes the hooks are grouped in the 'hooks' module.

pytest_addoption(parser)

Parses flags that can enable/disable specific event handlers.

Parameters:

Name Type Description Default
parser Parser

A pytest Parser object to add the command-line options.

required

pytest_configure(config)

Initialize trace file tracking when pytest starts

zelos_session(request)

Initialize Zelos session-level fixtures.

Report

zelos_sdk.pytest.report

Report plugin for pytest.

Use via:

pytest_plugins = ["zelos_sdk.pytest.report"]

pytest_zelos_configure(config)

configure zelos report plugin

Plugins

zelos_sdk.pytest.plugins

check(request)

checker object

pytest_addhooks(pluginmanager)

Add hooks from enabled plugins

pytest_addoption(parser)

Add options for plugin selection and delegate to enabled plugins

pytest_configure(config)

Configure enabled plugins

pytest_runtest_makereport(item, call)

Hook to inject trace file links into HTML reports.

This hook runs after each test phase and adds trace file links to the HTML report if pytest-html is available.

pytest_zelos_configure(config)

Delegate pytest_zelos_configure to enabled plugins

trace_file_class(request)

Initialize and manage trace handlers for each test class.

:yield: Manages the lifecycle of trace handlers without returning a value.

Parameters:

Name Type Description Default
request

The pytest request object.

required

trace_file_function(request)

Initialize and manage trace handlers for each test function.

:yield: Manages the lifecycle of trace handlers without returning a value.

Parameters:

Name Type Description Default
request

The pytest request object.

required

trace_file_module(request)

Initialize and manage trace handlers for each module.

:yield: Manages the lifecycle of trace handlers without returning a value.

Parameters:

Name Type Description Default
request

The pytest request object.

required

trace_file_session(request)

Initialize and manage trace handlers for the entire test session.

:yield: Manages the lifecycle of trace handlers without returning a value.

Parameters:

Name Type Description Default
request

The pytest request object.

required

trace_logging(request)

Initialize logging for the entire test session.

trace_stdout(request)

Initialize logging for the entire test session.

zelos_session(request)

Initialize Zelos session-level fixtures.

Config

zelos_sdk.pytest.config

Config plugin for pytest.

Use via:

pytest_plugins = ["zelos_sdk.pytest.config"]

pytest_addhooks(pluginmanager)

This example assumes the hooks are grouped in the 'hooks' module.

pytest_addoption(parser)

Add options for the pytest invocation

pytest_configure(config)

Configurations for the pytest invocation