📝 Задания: вопросы самопроверки
⚡ Ключевые вопросы
- Назовите три метода ожидания в Selenium и их отличия.
- Какое EC использовать, если нужно дождаться конкретного текста в элементе?
- Что такое AJAX? Почему для AJAX нужны явные ожидания?
- Почему нельзя смешивать
implicitly_waitиWebDriverWait?
Блок 1: Ожидания в Selenium
Вопрос 1
Что такое ожидания в Selenium? Зачем они нужны?
Вопрос 2
Назовите три метода ожидания в Selenium. Чем они отличаются?
Вопрос 3
Какой метод ожидания считается рекомендуемым для реальных тестов? Почему?
Вопрос 4
Назовите два плюса и два минуса implicitly_wait.
Вопрос 5
Почему time.sleep() — плохой вариант ожидания? Перечислите минусы.
Блок 2: Expected Conditions
Вопрос 6
Напишите код: дождаться, пока элемент с id="login-btn" станет кликабельным, и кликнуть по нему.
Вопрос 7
В чём разница между presence_of_element_located и visibility_of_element_located?
Вопрос 8
Какое EC использовать, чтобы убедиться, что пользователь попал на страницу Dashboard после логина?
Вопрос 9
Перечислите все EC из лекции и укажите для каждого — когда его использовать.
Блок 3: AJAX
Вопрос 10
Что такое AJAX? Приведите три примера его использования на сайтах.
Вопрос 11
Почему implicitly_wait может не справиться с AJAX? В чём ограничение?
Вопрос 12
Напишите тест: нажать кнопку id="ajaxButton", дождаться появления текста "Data loaded" в элементе с классом bg-success.
Блок 4: Взаимодействие с элементами
Вопрос 13
Что делают методы send_keys(), clear(), click()? Приведите пример каждого.
Вопрос 14
Напишите фикстуру pytest, которая открывает OrangeHRM, вводит логин «Admin» / пароль «admin123», нажимает Login и ждёт URL с «dashboard».
Вопрос 15
В slow calculator нужно ввести задержку 45 секунд и вычислить 7+8. Объясните: почему timeout у WebDriverWait должен быть больше 45?