Я застрял в ситуации с ожиданием селена. Я использую Selenium Java с огурцом. При нажатии кнопки загружается новая страница, но ее содержимое еще не становится доступным для нажатия. Блокировщик серого экрана отображается, когда страница загружается на обратной стороне, чтобы сделать ее недоступной для редактирования до полной загрузки страницы. Поэтому я не мог использовать waitforpageload или ждать, пока элемент станет видимым, поскольку они оба возвращают true, поскольку элементы доступны в фоновом режиме. Я попытался использовать условие, чтобы проверить, доступны ли элементы для щелчка, чтобы убедиться, что страница загружается полностью. Но и это не сработало. Как только страница загружается на заднем плане, выполняются дальнейшие проверки, и проверка завершается ошибкой.
Я также пробовал подождать, пока не виден элемент:
public static void waitUntilTextIsInvisible(final String text, final int timeoutInSecs)
{
if (StringUtils.isBlank(text))
{
return;
}
try
{
(new WebDriverWait(_webDriver, timeoutInSecs))
.until(new ExpectedCondition<Boolean>()
{
@Override
public Boolean apply(final WebDriver d)
{
return SeleniumUtils.findElementsContainingText(text, d).size() == 0;
}
});
}
catch (TimeoutException e)
{
LOG.error("Exception on page " + _webDriver.getCurrentUrl()
+ " waiting for text " + text + " to be visible");
throw e;
}
}
Но это даже вернуло истину и перешло к выполнению следующего шага. Как заставить селен ждать, пока не исчезнет серый экран, а затем искать содержимое на странице.
Любые ответы будут оценены.
-Лакшми.
См .: Как мне сделать X? Ожидается, что пользователь, задающий вопрос, не только проведет исследование, чтобы ответить на свой вопрос, но и поделится этим исследованием, попытками кода и результатами. Это демонстрирует, что вы потратили время, чтобы попытаться помочь себе, избавляет нас от повторения очевидных ответов и, прежде всего, помогает вам получить более конкретный и актуальный ответ! См. Также: Как спросить
Вы также должны добавить тег для нужного языка.




Вы можете приостановить браузер, когда страница загружается и появляется блокировщик серого экрана. Получите для него xpath и подождите, пока его больше не будет. Позвольте мне знать, если это помогает.
Возможный дубликат Как подождать, пока элемент перестанет существовать в Selenium