{"categories":[{"label":"Testing","url":"https://skillfed.io/packages/category/software-development-testing/2"},{"label":"Quality Assurance","url":"https://skillfed.io/packages/category/software-development-quality-assurance"},{"label":"User Interfaces","url":"https://skillfed.io/packages/category/software-development-user-interfaces"},{"label":"Desktop Environment","url":"https://skillfed.io/packages/category/desktop-environment"}],"enrichment":{"capability":"pytest-qt is a pytest plugin that provides fixtures and utilities to test PyQt5, PyQt6, and PySide6 applications, including widget interaction simulation and signal handling.","skillfed_tags":["qt-testing","gui-automation","pytest-plugin"],"use_cases":["Test button clicks and user input on PyQt5/PyQt6/PySide6 widgets to verify UI state changes.","Verify that Qt signals are emitted at the right time using waitSignal/waitSignals in your test suite.","Capture and assert on qDebug, qWarning, and qCritical messages emitted during widget operations.","Validate exception handling in Qt virtual methods and slots by letting pytest-qt catch and report them.","Automate GUI regression testing in CI pipelines by simulating user interactions programmatically."],"what_it_does":"pytest-qt bridges pytest and Qt application testing by providing the qtbot fixture, which manages Qt application lifecycle and exposes methods to simulate user interactions like mouse clicks and key presses. It also captures Qt debug/warning/critical messages automatically and provides waitSignal/waitSignals functions to block tests until specific signals are emitted, plus automatic exception handling in virtual methods and slots.\n\nThe plugin auto-detects which Qt library (PySide6, PyQt6, or PyQt5) is available or already imported, or lets you force a choice via pytest.ini or environment variable. It's designed for developers who need to verify that the view layer of a Qt application behaves correctly after code changes, without requiring manual GUI interaction.","worth_installing":"Yes. pytest-qt is production-stable (since 2013), actively maintained, has no known vulnerabilities, and installs with low friction. Install it if you're testing PyQt or PySide applications and want pytest-native fixtures for widget interaction and signal handling. The only prerequisite is having one of PyQt5, PyQt6, or PySide6 already available."},"id":"pytest-qt","links":{"html":"https://skillfed.io/packages/pytest-qt","md":"https://skillfed.io/packages/pytest-qt.md","pypi":"https://pypi.org/project/pytest-qt/"},"maintenance":{"status":"active"},"meta":{"latest_release":"2025-07-01","license_spdx":null,"license_treatment":"permissive","name":"pytest-qt","python_support":"supports_current","summary":"pytest support for PyQt and PySide applications"},"popularity":{"monthly_downloads":1187026,"position":4247,"tier":"top_5000"},"security":{"n_vulnerabilities":0},"version":"4.5.0"}
