Skip to main content
Pre-release

This release is a pre-release and may not be stable for production use.

pytest-test-radar

pytest-test-radar is a pytest plugin designed to send test execution statistics to a centralized server. This allows teams to monitor flaky tests, track performance, and identify redundant or overly stable tests that might not be adding value to the test suite.

Features

  • Collects test execution statistics, including:
    • Test name
    • Outcome (passed, failed, skipped)
    • Execution duration
  • Sends data to a configured HTTP endpoint.
  • Easy integration with any centralized monitoring system.

Installation

You can install it to your project dependencies:

pip install pytest-test-radar

Usage

Run pytest with --radar-endpoint and --radar-token options to specify the server URL and agent token:

pytest --radar-endpoint="http://your-server.com" --radar-token="ci_your_token_here"

You can also configure both via pyproject.toml:

[tool.pytest.ini_options]
radar_endpoint = "http://your-server.com"
radar_token = "ci_your_token_here"

The token is obtained from the Test Radar web UI when creating or regenerating an agent for a project. It is sent as an Authorization: Token <token> header with every request.

Example

Create a sample test file:

# test_sample.py
def test_pass():
    assert 1 == 1

def test_fail():
    assert 1 == 2

Run the tests with the plugin:

pytest test_sample.py --radar-endpoint="http://localhost:8000" --radar-token="ci_your_token_here"

Test results are accumulated and sent in batches to /api/v1/test_record/bulk_create/:

{
  "session_id": "550e8400-e29b-41d4-a716-446655440000",
  "started_at": "2024-01-01T12:00:00+00:00",
  "environment": {
    "os": "Linux",
    "os_version": "6.6.0",
    "arch": "x86_64"
  },
  "context": {
    "branch": "main",
    "commit_hash": "abc123def456"
  },
  "records": [
    {
      "label": "test_sample.py::test_pass",
      "timestamp": "2024-01-01T12:00:00+00:00",
      "logs": "",
      "success": true
    },
    {
      "label": "test_sample.py::test_fail",
      "timestamp": "2024-01-01T12:00:00+00:00",
      "logs": "KLUv/QBY...",
      "success": false
    }
  ]
}

The logs field for failed tests contains base64-encoded zstd-compressed traceback text.

Release files for pytest-test-radar 0.0.1a7

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for pytest-test-radar 0.0.1a7
File Size Uploaded
pytest_test_radar-0.0.1a7.tar.gz 32.3 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for pytest-test-radar 0.0.1a7
File Interpreter ABI Platform
pytest_test_radar-0.0.1a7-py3-none-any.whl Python 3 none any Details

Total release size: 39.7 kB

Release files / pytest_test_radar-0.0.1a7.tar.gz

Download URL pytest_test_radar-0.0.1a7.tar.gz
Size 32.3 kB
Tags Source
SHA-256 checksum
How to use checksums
b8fa65bf7052405094dd45505a4b16b7ca8657fc24c40454b351faa16ded9291
BLAKE2b-256 checksum
How to use checksums
6278a10a12035c66be5dbda9c85ffd2964c52f96d75d28de28c32a26905b4498
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via poetry/2.1.4 CPython/3.13.6 Darwin/24.3.0

Release files / pytest_test_radar-0.0.1a7-py3-none-any.whl

Download URL pytest_test_radar-0.0.1a7-py3-none-any.whl
Size 7.3 kB
Tags Python 3
SHA-256 checksum
How to use checksums
b2b03b4472ffa4d6e82fc2e77d83b140028e0ced01a49f1d379cb4a3e3821a65
BLAKE2b-256 checksum
How to use checksums
0e5547c52188ea78f882612c15a0fac53dfc344c2ca5d9e11c6ea4f2d836a562
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via poetry/2.1.4 CPython/3.13.6 Darwin/24.3.0
Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page