Pytest-Qt Smoke
Overview
Use this workflow when a GUI change needs lightweight coverage definitions. In this repo, do not execute pytest-qt/offscreen GUI tests locally unless the user explicitly approves a safe visible GUI test environment.
Workflow
- Activate
.\.venv1or use.\.venv1\Scripts\python.exefor Python commands. - Read
AGENTS.md,ARCHITECTURE.md,docs/agent/agent-index.md, and the nearest existing pytest-qt tests intests/. - Add or update the smallest practical pytest-qt smoke test when useful for future CI or manual GUI verification.
- Do not run the pytest-qt/offscreen test locally. Do not set
QT_QPA_PLATFORM=offscreen. - Use fake controllers, lightweight payloads, or signals instead of real processing.
- Assert visible labels, enabled states, checked states, tooltips, status text, or emitted signals.
- Avoid real file I/O unless using
tmp_path. - Avoid depending on protected legacy internals.
- Keep the test deterministic and focused on the changed behavior.
Checks
- Confirm the test would have failed for the original bug when practical by inspecting the assertion and changed code path.
- Confirm the test does not start real long-running processing.
- Verify with non-GUI checks instead:
py_compile, focusedruff, GUI import audit, andagent_audit.py --check gui.
Response Requirements
- Name the smoke test added or updated.
- State what GUI behavior it proves.
- Include verification commands and results.
- Document that pytest-qt/offscreen execution was skipped locally and include visible/manual smoke steps.
Source: zcm58/FPVS-Toolbox-Repo — distributed by TomeVault.