Я новичок в селене. Мое приложение - очень старое приложение, разработанное в 2004-2006 годах, и каждое другое действие открывает новое окно. Я использую веб-драйвер Selenium для Internet Explorer для написания автоматических тестовых примеров.
Я переключаюсь между открытыми окнами с помощью driver.switchTo().window(windowname);
однако мои тестовые примеры терпят неудачу, когда мои тесты выполняются в других средах, где время отклика моего приложения время от времени отличается. из-за чего иногда мои тестовые примеры проходят, а в других случаях терпят неудачу. В настоящее время я использую Thread.sleep(THRESHOLD)
и знаю, что это плохая практика. Мне известно о WebDriverWait
и трех ожиданиях неявных, явных, беглых. Но моя проблема в том, что никто из них не ждет бесконечно долго, пока я не получу ответ. Каждое ожидание требует порогового значения, до которого он будет проверять, готова ли страница, и если ответ не находится в пределах порогового значения, он завершится ошибкой. Есть ли способ, где я могу динамически ждать ответа, где иногда ответ будет немедленным, а иногда и отложенным. Во всех случаях я не должен вводить какое-либо пороговое значение, а тестовые примеры должны ждать ответа независимо от времени ответа.