Ищите способ проверить наличие неожиданных окон во время цикла for в автоматическом тестировании Python - PullRequest
0 голосов
/ 26 апреля 2019

Я запускаю несколько автоматических тестов в приложении POS, где большое количество продаж вводится с использованием цикла for.Во время теста бывают случаи, когда окно приложения может потерять фокус, и когда это происходит, мы получаем всплывающее окно, в результате чего тест останавливается.

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

1 Ответ

0 голосов
/ 26 апреля 2019

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

Если вам не нужно проверять через очень определенные и короткие промежутки времени, достаточно использовать что-то вроде time.clock(). Если вам НЕОБХОДИМО упомянутое выше, для этого есть библиотеки, в частности, модуль signal или более продвинутый sched, которые являются частью стандартной библиотеки (насколько я знаю, Документирование сигнала Документация по расписанию ).

Существуют и другие (внешние, нестандартные) модули, которые могут работать, но здесь достаточно sched и / или signal.

Не стесняйтесь спрашивать, не возникнет ли еще вопроса.

Этот пост SO также может помочь: прерывания в реальном времени в python

...