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

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

Built distribution (wheel)

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

Total release size: 40.1 kB

Release files / pytest_test_radar-0.0.1a8.tar.gz

Download URL pytest_test_radar-0.0.1a8.tar.gz
Size 32.6 kB
Tags Source
SHA-256 checksum
How to use checksums
9fef399389734e62b5cba9616c1c544c4648967cc725a0990a812e13ebc1f91c
BLAKE2b-256 checksum
How to use checksums
ccc0b5a06c3492590c7dfd82606bfb38412305ed5ccc28da85fa541d0dbad5ff
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.1a8-py3-none-any.whl

Download URL pytest_test_radar-0.0.1a8-py3-none-any.whl
Size 7.5 kB
Tags Python 3
SHA-256 checksum
How to use checksums
409d5ecd975ff1f01a2d91c425e86ff029216c95331e9e20a12d8acc1eab7de1
BLAKE2b-256 checksum
How to use checksums
076b7908e80315742469f2877b8975dbb93ad41ed0c15aa27df3d7cef186ac24
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