Я тестирую веб-приложение, которое необходимо обновлять один из элементов заголовка каждые 5 секунд. Этот элемент заголовка обновляет всех пользователей с сообщением всякий раз, когда выдает Quote/Policy любому, кто использует это же приложение в группе. Таким образом, наши разработчики постоянно делают звонки AJAX каждые 5 секунд на всех страницах и для всех пользователей.WebDriver ждет загрузки страницы для непрерывных вызовов AJAX в фоновом режиме
Для навигации по различным страницам, я сначала с помощью неявного ожидания, как,
DRIVER.manage().timeouts().implicitlyWait(10, TimeUnit.SECONDS);
После этого непрерывный AJAX вызовов, я должен был использовать WebDriver ждать явную функцию и искать видимость объекта при навигации по страницам; как,
Wait<WebDriver> wait = new WebDriverWait(DRIVER, 20);
wait.until(visibilityOfElementLocated(By.id(objID)));
(Пожалуйста, обратите внимание visibilityOfElementLocated еще одна функция, которая также выполняет обработку исключений.)
Мой вопрос сейчас, это явные вызовы изменения кода отлично работает, когда я запускать скрипты в IE 8. Но, когда я запускаю это в IE 9, он по-прежнему ведет себя так же и бесконечно ждет загрузки страницы (или дождитесь завершения этого вызова AJAX). И, если я остановлю вызовы браузера (нажав Esc или x ссылку), мой сценарий продолжается для этой страницы и снова висит на следующей странице.
Любая идея, почему IE 9 не работает как IE 8 для загрузки страницы? Есть ли способ отладить это?
PS: Я пробовал обновлять IEDriverServer, но напрасно. Кроме того, это отлично работает в браузере Chrome и FF.
как раз больше обновлений: Я попытался с IE10 и это не сработало , –
Не уверен, что это помогает, но наше приложение asp .Net использует signalR для поддержания непрерывных соединений. –