#selenium #automated-tests #robotframework #testcase
Вопрос:
В моем тестовом примере платформы робота у меня есть следующий фрагмент кода для загрузки страницы и проверки того, успешно ли загружается страница или нет.
Go To ${href}
Wait For Condition return document.readyState=="complete" 5
Wait For Condition return document.visibilityState=="visible" 5
Wait Until Page Does Not Contain 404 page not found 5
Но в некоторых случаях Go To ${href}
загрузка страницы занимает около 3 минут.
В Robot-фреймворке есть ли способ пропустить загрузку страницы и повторить попытку, если время загрузки превысит определенное время?
Ответ №1:
Во встроенной библиотеке есть ключевое слово Wait Until Keyword Succeeds
, которое можно использовать для повторной попытки.
Вы можете дать 1-минутный тайм-аут своему ключевому слову навигации и запустить его максимум 5 раз, например, с помощью вышеупомянутого ключевого слова.
Комментарии:
1. Огромное спасибо. Мне это тоже надоело, когда я проверил файл журнала на время, затраченное на каждое ключевое слово, для некоторого URL-адреса Переход к ${href} занял 5 минут без повторных попыток. Моя цель здесь состоит в том, чтобы, если время загрузки страницы (время, затраченное на переход к ${href}, занимает много времени), я должен выйти из этого ключевого слова. Пока не мог этого достичь.
Ответ №2:
Вы можете изменить время ожидания по умолчанию для платформы selenium с помощью «Установить время ожидания Selenium», а затем выполнить «Перейти к…», что позволит вам не ждать 3 минуты
Если вы хотите повторить переход до тех пор, пока он не завершится успешно, вы можете использовать «Подождите, пока ключевое слово не завершится успешно», как предложено в другом ответе.
Комментарии:
1. Огромное спасибо. Я также устал от этого, по умолчанию тайм-аут selenium framework составляет 5 сек. даже для этого значения перейдите к ключевому слову <url> и продолжайте работать до тех пор, пока не будет загружена полная страница, что приводит к большому времени выполнения набора тестов. Поэтому я хочу остановить переход ПО URL-адресу {url}, если он достигнет определенного времени.
2. Я использовал Ожидание, пока ключевое слово не завершится успешно, 3 30 секунд Перейдите к ${href} также Установите тайм-аут Селена