Skip to main content

suite-doctor

A pytest-integrated health checkup tool. Runs your existing test suite via pytest and reports on its health — not another test framework, a wrapper around the one you already use.

Status

Shipped on PyPI. Core pipeline, flaky detection, coverage, config support, and JSON output all working.

Why

pytest tells you pass/fail. suite-doctor tells you:

  • Slowest tests, sorted
  • Failures with short message + full traceback (--verbose)
  • Flaky tests — re-runs failures N times, flags inconsistent ones
  • Coverage summary — % covered, worst-covered files (--coverage)
  • Skipped/xfail counts
  • Clean, colorized CLI output (via rich) instead of pytest's default verbose dump
  • Machine-readable output for scripts/CI (--json)

How it works

Shells out to pytest --json-report (via pytest-json-report), parses the JSON, formats a summary. No pytest internals, no plugin hooks — just wraps the CLI you already run.

Requirements

  • Python 3.11+
  • pytest
  • pytest-json-report
  • pytest-cov
  • rich

Install

pip install suite-doctor

Usage

suite-doctor <path-to-project>

Example:

suite-doctor ./my-project

Flags

  • --top, -t — number of slowest tests to show (default: 5)
  • --rerun — number of reruns for flaky detection (default: 3)
  • --verbose, -v — show full tracebacks for failures
  • --coverage, -c — show coverage summary
  • --json — output results as JSON

Config file

Set defaults in your project's pyproject.toml:

[tool.suite-doctor]
top = 10
rerun = 5
coverage = true

CLI flags always override config file values.

Roadmap

  • Subprocess runner
  • Report parsing (summary/slowest/failures)
  • Flaky test detection
  • Coverage integration
  • Config file support
  • --json output mode
  • Published to PyPI
  • Exit code reflects pass/fail (CI use)
  • Tests for suite-doctor itself

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

suite_doctor-1.0.0.tar.gz (7.1 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

suite_doctor-1.0.0-py3-none-any.whl (6.2 kB view details)

Uploaded Python 3

File details

Details for the file suite_doctor-1.0.0.tar.gz.

File metadata

  • Download URL: suite_doctor-1.0.0.tar.gz
  • Upload date:
  • Size: 7.1 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/7.0.0 CPython/3.13.13

File hashes

Hashes for suite_doctor-1.0.0.tar.gz
Algorithm Hash digest
SHA256 12cf27bd5d8029cdf074b2a29b4bf26b228511aa55421f557e381ec4515cde7a
MD5 f2cb065eb952007763be5334190a6465
BLAKE2b-256 93293cd5a3f8bee91d7c8da5556b5c1db2f2d84a97b8f9ccee5f5f7098590bff

See more details on using hashes here.

File details

Details for the file suite_doctor-1.0.0-py3-none-any.whl.

File metadata

  • Download URL: suite_doctor-1.0.0-py3-none-any.whl
  • Upload date:
  • Size: 6.2 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/7.0.0 CPython/3.13.13

File hashes

Hashes for suite_doctor-1.0.0-py3-none-any.whl
Algorithm Hash digest
SHA256 230ee5e9c61381104f265fe0412f5a5d5a4ed25a6ca1c8050c64d6dce53baf10
MD5 36984e7c1980d32a55faae70fde7b933
BLAKE2b-256 a5927c2a08ac42642a9347ceabb4fbbce6d77b09737a4dde9d2c6c3427b15524

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page