В этом интересном сообщении в блоге delphiXtreme я прочитал о возможностях встроенного графического интерфейса DUnit (в основном альтернативный тестовый класс case TGUITestCase, определенный в блоке GUITesting, который имеет несколько функций утилиты для вызова действий в GUI). Я был доволен этим, пока не заметил, что он не работает с модальными формами. Например, следующая последовательность не будет работать, если первая кнопка показывает модальную конфигурационную форму:
Click ('OpenConfigButton');
Click ('OkButton');
Второй Click выполняется только тогда, когда модальная форма закрыта, что я должен сделать вручную.
Я мало знаю о том, как модальные формы работают в фоновом режиме, но должен быть какой-то способ обойти это поведение. Наивно, я хочу как-то выполнить ShowModal "в потоке", чтобы "основной поток" оставался отзывчивым. Теперь я знаю, что запуск ShowModal в потоке, вероятно, испортит все. Есть ли альтернативы? любой способ обойти блокирующий характер ShowModal? Есть ли у кого-нибудь опыт тестирования GUI в Delphi?
Я знаю о внешних инструментах (от QA или других), и мы используем эти инструменты, но этот вопрос касается тестирования графического интерфейса в среде IDE.
Спасибо!