Modal Dialogs and Drop-down Menus Block Qat Test Execution

When a QAction triggers a QMessageBox::question() in its connected slot, the call runs synchronously. This prevents the Qat test script from interacting with the message box until it has already closed. The same blocking behavior occurs with any modal QDialog that uses exec() and with drop-down menus attached to QToolButton widgets.

In all these cases, Qat's test execution is paused while the modal component's internal event loop is running, making it impossible to automate interactions with these elements.

I have previously used Squish for Qt testing, and it does not experience this blocking issue. In Squish, modal dialogs and menus can be interacted with during test execution, which suggests a different underlying approach to event loop handling.

Is there a workaround or solution to prevent Qat from being blocked in these scenarios?

Edited by Mike