qase-python-commons
A library for Qase TestOps and Qase Report
What it is and what it does
Qase Python Commons is the foundational SDK for building test reporters that send results to Qase TestOps or generate local test reports. It centralizes configuration management, API client integration, and reporter lifecycle logic that all Qase Python reporters depend on. The library supports three configuration methods (CLI options, environment variables, and config files) and multiple reporting modes: testops for single-project reporting, testops_multi for distributing results across multiple projects, report for local JSON output, and off to disable reporting entirely.
The package wraps qase-api-client and qase-api-v2-client to handle communication with Qase's backend, and provides utilities for status mapping, test run configuration, and result batching. It is primarily intended for developers building custom reporters for specialized test frameworks; most users should install a ready-made reporter (qase-pytest, qase-behave, qase-robotframework, or qase-tavern) instead, which depend on this library.
Use it for:
- Build a custom test reporter for a framework not covered by the official Qase reporters.
- Integrate test results into Qase TestOps from a proprietary or internal test runner.
- Generate local JSON test reports with configurable paths and formats for CI/CD pipelines.
- Manage test result reporting across multiple Qase projects from a single test execution.
- Implement status mapping and filtering logic for test result normalization.
Worth the install?
AI-flagged interpretation of the facts on this page — verify before relying
Provides core configuration and SDK infrastructure for building test reporters that integrate with Qase TestOps, supporting single-project, multi-project, and local reporting modes.
Yes, if you are developing a custom test reporter or integrating a non-standard test framework with Qase. No, if you are testing with pytest, behave, robot framework, or tavern—install the framework-specific reporter instead, which includes this library as a dependency. The package is actively maintained, permissively licensed, and has no known vulnerabilities.
Install
qase-python-commons on PyPI
pip
pip install qase-python-commonsuv
uv add qase-python-commonspoetry
poetry add qase-python-commonsInstalling qase-python-commons
Before you install
Low friction install with five runtime dependencies. Actively maintained with a recent release 72 days ago and no known vulnerabilities. Supports Python 3.9 through 3.13.
License in practice
Licensed under Apache Software License (permissive), allowing commercial and private use with minimal restrictions.
Quickstart
pip install qase-python-commons
from qase_python_commons import QaseConfig
config = QaseConfig.from_env()
# Configure via environment variables (QASE_MODE, QASE_TESTOPS_API_TOKEN, etc.)
Requires Python 3.9 or later. Intended as a foundation for custom reporters; most users should install a framework-specific reporter (qase-pytest, qase-behave, qase-robotframework, or qase-tavern) instead.
Verify before relying
- Whether the package's configuration system supports all documented options without additional setup or plugins.
- Performance characteristics when handling large test result batches or multi-project configurations.
Package facts
| License | not declared (permissive) |
| Python support | supports the current Python release (>=3.9) |
| Install friction | low — pure-Python wheel |
| Runtime dependencies | 5 — certifi, attrs, qase-api-client, qase-api-v2-client, more_itertools |
| Maintenance | actively maintained — 72 days since the last release |
| Last repo commit | |
| First released | |
| Downloads | 157,086/month — #10,765 on PyPI (30-day window, as of 2026-08-14) |
| Known vulnerabilities | none known (OSV.dev, checked 2026-08-14) |
Evidence: qase_python_commons-5.1.2-py3-none-any.whl
Tags
More Testing packages
Pluggy provides a plugin system that lets you…
permissive · top 100 on PyPI
pytestpytest is a testing framework that lets you…
permissive · top 100 on PyPI
virtualenvvirtualenv creates isolated Python environments…
permissive · top 100 on PyPI
coverageCoverage.py measures which lines of Python code…
permissive · top 1,000 on PyPI
pytest-asynciopytest-asyncio is a pytest plugin that enables…
permissive · top 1,000 on PyPI
pytest-json-ctrfA pytest plugin that generates test reports in…
permissive · top 1,000 on PyPI
qase-pytestA pytest plugin that reports test results to…
permissive · top 15,000 on PyPI
qase-api-clientPython client library for the Qase TestOps API…
unclear · top 15,000 on PyPI
qase-api-v2-clientA Python client library for the Qase TestOps…
unclear · top 15,000 on PyPI
pyats.reporterCollects test results and generates reports for…
permissive · top 15,000 on PyPI
teamcity-messagesSends test results and build status from Python…
permissive · top 15,000 on PyPI
approvaltestsApprovalTests provides a snapshot-based…
permissive · top 15,000 on PyPI
pytest-html-reporterGenerates static HTML test reports from pytest…
permissive · top 15,000 on PyPI
approval-utilitiesProvides utility functions and helpers for…
permissive · top 15,000 on PyPI
tdd-guard-pytestA pytest plugin that captures test results and…
permissive · top 15,000 on PyPI
reportportal-clientA Python client library that sends test…
permissive · top 5,000 on PyPI