DUnit GUI тест закрытия модального окна зависает при запуске на TeamCity - PullRequest
2 голосов
/ 01 марта 2012

Я пытался сделать GUI-тест с DUnit, который включает взаимодействие с модальными окнами через систему таймера цикла сообщений от @tomazy (см. Мой предыдущий вопрос для более подробной информации: (Как) Могу ли я использовать FutureWindows со стандартным диалоги открытия файла? ).

Мое решение по другому вопросу работает нормально, когда я запускаю тесты вручную, но когда я запускаю это в системе непрерывной сборки в TeamCity, оно зависает, когда нужно обработать сообщение OK в диалоговом окне. Служба, которая запускает тесты, имеет набор разрешений «взаимодействовать с рабочим столом», и я убедился, что зависание происходит ТОЛЬКО при нажатии кнопки «ОК» (т. Е. Происходит уведомление CDN_FILEOK). Я могу закрыть диалоговое окно с помощью WM_CLOSE, но это, естественно, не приводит к тому, что диалоговое окно возвращает модальный результат OK, и, следовательно, его нельзя использовать.

Если я не могу заставить это работать, мне, вероятно, придется изменить производственный код (цель теста), чтобы опубликовать событие, чтобы дать имя файла и включить в него тестовый хук, и дать его без диалога, но я хотел бы знать, что является причиной этой проблемы, и желательно, конечно, решить ее без изменения производственного кода.

...