Урок 08. Summary session 4

📁 Блок: Selenium ⏱️ Время изучения: ~30 мин 🎯 Сложность: Средняя
#summary #explicit-wait #WebDriverWait #expected-conditions #AJAX #повторение

⚡ Кратко: Summary session 4

Summary session 4 — повторение ключевых тем урока 07: ожидания в Selenium, WebDriverWait + EC, AJAX, взаимодействие с элементами.

  • Три вида ожидания: implicitly_wait (глобальное), WebDriverWait + EC (явное, рекомендуется), time.sleep (антипаттерн).
  • Лучший выбор: WebDriverWait(driver, 10).until(EC.element_to_be_clickable(...))
  • Ключевые EC: presence_of_element_located, visibility_of_element_located, element_to_be_clickable, text_to_be_present_in_element, url_contains
  • AJAX: данные загружаются без перезагрузки страницы — нужны явные ожидания конкретного состояния элемента.
  • send_keys() — ввод текста; clear() — очистка поля; click() — клик по элементу.

Топ-3 ошибки: 1) Смешивать implicitly_wait и WebDriverWait — непредсказуемые задержки. 2) Использовать time.sleep вместо EC — медленно и ненадёжно. 3) Путать presence (в DOM) и visibility (виден пользователю).

📖 О чём этот урок

Это урок-повторение блока «Расширенные практики Selenium». Мы закрепляем всё, что изучали в уроке 07: три вида ожидания, таблицу сравнения, все Expected Conditions, работу с AJAX-страницами и базовые взаимодействия с элементами через send_keys, clear, click.

Что повторим

  • Зачем нужны ожидания в Selenium и чем они отличаются
  • Неявные ожидания (implicitly_wait): плюсы, минусы, когда применять
  • Явные ожидания (WebDriverWait + EC): синтаксис, все ключевые условия
  • Почему time.sleep() — антипаттерн
  • Таблица сравнения трёх методов ожидания
  • Что такое AJAX и почему он требует явных ожиданий
  • Разбор задач из лекции: load delay, OrangeHRM login, slow calculator, data-types form
  • Методы взаимодействия с элементами: send_keys(), clear(), click()

📚 Что повторить перед изучением

🎯 Что изучать дальше