pytest_park.models.benchmark
source module pytest_park.models.benchmark
Classes
-
BenchmarkStats — Core benchmark statistics from pytest-benchmark.
-
BenchmarkCase — A single benchmark case in a run.
-
BenchmarkRun — A full benchmark run loaded from one JSON artifact.
-
BenchmarkDelta — A comparison result for one benchmark case.
-
GroupSummary — Aggregated comparison metrics for a logical group.
-
TrendPoint — Time-series data for one case and run.
source dataclass BenchmarkStats(mean: float, median: float, min: float, max: float, stddev: float, rounds: int, iterations: int, ops: float)
Core benchmark statistics from pytest-benchmark.
source dataclass BenchmarkCase(name: str, fullname: str, normalized_name: str, normalized_fullname: str, base_name: str, method_parameters: str | None, method_postfix: str | None, benchmark_group: str | None, marks: tuple[str, ...], params: dict[str, str], custom_groups: dict[str, str], stats: BenchmarkStats)
A single benchmark case in a run.
Attributes
-
case_key : str — Build a deterministic key for cross-run comparisons.
source property BenchmarkCase.case_key: str
Build a deterministic key for cross-run comparisons.
source dataclass BenchmarkRun(run_id: str, source_file: str, created_at: datetime | None, tag: str | None, commit_id: str | None, machine: str | None, python_version: str | None, metadata: dict[str, Any] = field(default_factory=dict), cases: list[BenchmarkCase] = field(default_factory=list), profiler: dict[str, dict[str, Any]] = field(default_factory=dict))
A full benchmark run loaded from one JSON artifact.
source dataclass BenchmarkDelta(group_label: str, case_key: str, benchmark_name: str, params: dict[str, str], reference_run_id: str, candidate_run_id: str, reference_mean: float, candidate_mean: float, delta_pct: float, speedup: float)
A comparison result for one benchmark case.
source dataclass GroupSummary(label: str, count: int, average_delta_pct: float, median_delta_pct: float, improvements: int, regressions: int, unchanged: int)
Aggregated comparison metrics for a logical group.
source dataclass TrendPoint(run_id: str, timestamp: datetime | None, mean: float)
Time-series data for one case and run.