codingjoe / codingjoe/threadmill

Timing-dependent inspector coverage makes the suite report flapping misses

Offen
#55 1 Kommentar 0 Reaktionen 0 zugewiesene Personen Auf GitHub ansehen
Vorherrschende Sprache
Python
Sterne
12
Forks
1
Ø Merge
1 T. 1 Std.
Gemergte PRs (30 T.)
10

Beschreibung

Found by `testJoe` while adding coverage for the fair multi-queue rotation (`codingjoe-fair-multi-queue-scheduling`). Pre-existing and untouched by that diff.

Coverage of these inspector paths flaps from run to run, which means the lines are reached by timing rather than deterministically — the tests under `tests/test_inspector.py` pass on their own (58/58 per run), so this is a flaky-coverage problem, not a red suite:

- `threadmill/inspector/telemetry.py:37-41` — the `rates_for` path.
- `threadmill/inspector/telemetry.py:81` — the `_evict` `popitem` path.
- `threadmill/inspector/app.py:592-603` — `_refresh_sparklines`.

Either drive those paths deterministically (inject the clock, shorten the refresh interval) or mark the timing-dependent assertions so coverage stops depending on scheduling.

Beitragsleitfaden

Beitragsleitfaden öffnen

Rechercherichtung

Start with tests/test_inspector.py, which passes independently, then inspect threadmill/inspector/telemetry.py lines 37-41 and 81 and threadmill/inspector/app.py lines 592-603. Reproduce the coverage flapping and make those timing-dependent paths deterministic, or mark the assertions so coverage no longer depends on scheduling; the inspector tests and coverage should remain stable.

Vom Indexierungsmodell aus dem Issue-Text verfasst.

Bewertung

Tech-Stack
python
Bereich
testing-qa
Issue-Typ
Bug
Schwierigkeit
3/5
Geschätzter Aufwand
1-2 Tage
Aktivitätsstatus
Aktiv
Klarheit
Größtenteils klar
Anfängerfreundlichkeit
68/100

Neue Issues direkt in Ihr Postfach

Eine kurze Übersicht über anfängerfreundliche GitHub-Issues.