reportportal-client
Python client for ReportPortal v5.
What it is and what it does
ReportPortal Client is a Python library that integrates test execution with ReportPortal, a centralized test reporting and analytics platform. It provides an API to send test results, logs, and attachments (screenshots, files) to ReportPortal in real time. The library handles the communication with ReportPortal's backend, managing launch sessions, test items, and log entries through a client object that queues and uploads data asynchronously.
The package is designed primarily as a foundation for framework-specific agents (PyTest, Robot Framework, Behave) rather than for standalone use, though the description excerpt shows it can be used directly. It depends on requests for HTTP communication, aiohttp for async operations, certifi for SSL certificate validation, and typing-extensions for type hints. The client runs an internal thread to handle log uploads, requiring explicit termination to ensure all pending requests are processed.
Use it for:
- Integrate test execution results into ReportPortal from custom test runners or frameworks not covered by existing agents.
- Attach screenshots and diagnostic files to test reports for failure analysis and debugging.
- Build a custom test listener that sends real-time test progress and logs to a centralized ReportPortal instance.
- Log test execution metadata (parameters, attributes, tags) alongside test results for analytics and filtering.
- Implement test result reporting in CI/CD pipelines that use non-standard test frameworks.
Worth the install?
AI-flagged interpretation of the facts on this page — verify before relying
A Python client library that sends test execution data, logs, and attachments to ReportPortal, a test reporting and analytics platform.
Yes, if you are using ReportPortal for test reporting and need to integrate a test framework or custom runner not covered by existing agents. The package is actively maintained, has no known vulnerabilities, and installs with low friction. However, if you are using PyTest, Robot Framework, or Behave, use the framework-specific agent instead of this library directly.
Install
reportportal-client on PyPI
pip
pip install reportportal-clientuv
uv add reportportal-clientpoetry
poetry add reportportal-clientInstalling reportportal-client
Before you install
Low friction installation with standard dependencies (requests, aiohttp, certifi, typing-extensions). The package is actively maintained with a recent release and no known vulnerabilities.
License in practice
Licensed under Apache 2.0 (permissive), allowing free use, modification, and distribution with minimal restrictions.
Quickstart
pip install reportportal-client
from reportportal_client import RPClient
from reportportal_client.helpers import timestamp
client = RPClient(endpoint="http://reportportal:8080", project="default", api_key="your-api-key")
client.start()
launch = client.start_launch(name="Test Launch", start_time=timestamp())
item_id = client.start_test_item(name="Test Case", start_time=timestamp(), item_type="STEP")
client.log(time=timestamp(), message="Test message", level="INFO")
client.finish_test_item(item_id=item_id, end_time=timestamp(), status="PASSED")
client.finish_launch(end_time=timestamp())
client.terminate()
Requires a running ReportPortal instance and valid API credentials (endpoint, project name, and API key).
Verify before relying
- Whether this package is intended for direct use or primarily as a dependency of framework-specific agents (PyTest, Robot, Behave).
- Performance characteristics when handling large volumes of test results or attachments.
- Async behavior details and thread safety guarantees for concurrent test execution.
Package facts
| License | Apache-2.0 (permissive) |
| Python support | not specified |
| Install friction | low — pure-Python wheel |
| Runtime dependencies | 4 — typing-extensions, requests, aiohttp, certifi |
| Maintenance | actively maintained — 9 days since the last release |
| Last repo commit | |
| First released | |
| Downloads | 1,551,905/month — #3,774 on PyPI (30-day window, as of 2026-08-14) |
| Known vulnerabilities | none known (OSV.dev, checked 2026-08-14) |
Evidence: reportportal_client-5.7.10-py2.py3-none-any.whl
Keywords: testing, reporting, reportportal, client
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
pytest-reportportalA pytest plugin that integrates test execution…
permissive · top 5,000 on PyPI
robotframework-reportportalA RobotFramework listener that sends test…
unclear · top 15,000 on PyPI
teamcity-messagesSends test results and build status from Python…
permissive · top 15,000 on PyPI
behave-reportportalIntegrates Behave BDD test execution with…
permissive · top 15,000 on PyPI
allure-robotframeworkIntegrates Robot Framework test execution with…
permissive · top 15,000 on PyPI
pytest-html-reporterGenerates static HTML test reports from pytest…
permissive · top 15,000 on PyPI
pytest-htmlGenerates HTML reports for pytest test results,…
copyleft · top 1,000 on PyPI
google-analytics-dataPython client library for querying Google…
permissive · top 5,000 on PyPI
behavex-imagesAttaches images to BehaveX HTML test reports,…
permissive · top 15,000 on PyPI
prometheus-flask-exporterExports HTTP request metrics from Flask…
permissive · top 5,000 on PyPI