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.1a6

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.1a6
File Size Uploaded
pytest_test_radar-0.0.1a6.tar.gz 31.7 kB Details

Built distribution (wheel)

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

Total release size: 38.9 kB

Release files / pytest_test_radar-0.0.1a6.tar.gz

Download URL pytest_test_radar-0.0.1a6.tar.gz
Size 31.7 kB
Tags Source
SHA-256 checksum
How to use checksums
e3ddeb96ac3df59736a7df238f37f28653a2095320839e476af64e4cf9ce669a
BLAKE2b-256 checksum
How to use checksums
62c9e6212e5123cc9c0bc1f388e387e992d51f92834931f8b15e18f3faf3370e
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.1a6-py3-none-any.whl

Download URL pytest_test_radar-0.0.1a6-py3-none-any.whl
Size 7.2 kB
Tags Python 3
SHA-256 checksum
How to use checksums
acc2a085f0d7e91f8051f0a4f54f12936781b29d91a9308bddbe37ffbfbe8268
BLAKE2b-256 checksum
How to use checksums
f369e58044cbf2c323c0aeec3a43821daaad0dd93e203da6e589d50ef85d077f
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