Skip to main content

Schema-level API coverage down to individual keywords.

Project description

TraceCov

Schema-level API coverage down to individual keywords.

Your API tests pass. But did you actually test the validation rules?

Hitting POST /users with {"name": "Alice", "age": 30} gives you 100% endpoint coverage—but you haven't tested empty names, negative ages, or strings that are too long.

TraceCov measures coverage at the schema keyword level: minLength, pattern, enum, minimum - not just endpoints.

API Coverage Report

Install

pip install tracecov

Quick Start

import tracecov
import requests

# Load your OpenAPI schema
coverage = tracecov.CoverageMap.from_path("openapi.json")

# Wrap your session to track requests
session = coverage.requests.track_session(requests.Session())

# Run your tests as usual
session.post("https://api.example.com/users", json={"name": "Alice"})
session.get("https://api.example.com/users/123")

# Generate the report
coverage.save_report()

What It Tracks

Dimension What it measures
Operations HTTP method + path combinations called
Parameters Path, query, header, cookie, body coverage
Keywords JSON Schema validation rules (minLength, pattern, etc.)
Examples Schema examples and defaults used
Responses HTTP status codes returned

Documentation

https://docs.tracecov.sh/

Feedback

Help shape TraceCov: 2-minute survey

Professional Edition

For advanced features, contact info@tracecov.sh.

Project details


Download files

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

Source Distribution

tracecov-0.19.3.tar.gz (13.0 kB view details)

Uploaded Source

Built Distribution

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

tracecov-0.19.3-py3-none-any.whl (17.0 kB view details)

Uploaded Python 3

File details

Details for the file tracecov-0.19.3.tar.gz.

File metadata

  • Download URL: tracecov-0.19.3.tar.gz
  • Upload date:
  • Size: 13.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: uv/0.11.0 {"installer":{"name":"uv","version":"0.11.0","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for tracecov-0.19.3.tar.gz
Algorithm Hash digest
SHA256 e4dab738a3d12ea4abcb10a647163862c999d9f4077748b3d82b666574b60ec9
MD5 812b3ae5599c16076af64d14b3f2666f
BLAKE2b-256 af563105e11dd6ccd047b0433fd38698ac1ee6209d55c7bf55f58b94c6638a54

See more details on using hashes here.

File details

Details for the file tracecov-0.19.3-py3-none-any.whl.

File metadata

  • Download URL: tracecov-0.19.3-py3-none-any.whl
  • Upload date:
  • Size: 17.0 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: uv/0.11.0 {"installer":{"name":"uv","version":"0.11.0","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for tracecov-0.19.3-py3-none-any.whl
Algorithm Hash digest
SHA256 1ca88683b70505e1b2caf3678c769bce943fe3e0aea0b25bcc774fe4ed614658
MD5 938017819d9c2154e9beb5a3d4fd2d33
BLAKE2b-256 6268f7c5956cb057f8705fb507f8485749a808684f70af5851402af58b277a25

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