Урок 06. Summary session 3
⚡ Кратко: Summary session 3
Summary session 3 — повторение ключевых тем урока 05 Auto QA: локаторы в Selenium.
- Локатор — способ однозначно определить элемент на странице. Основа: класс
By. - CSS-селекторы:
#id,.class,[name="val"], вложенность (parent child/parent > child), частичное совпадение[href*="..."]. - XPath:
//*[@id="..."],//tag[text()="..."],//tag[contains(@attr,"...")]. find_element(By.X, "val")→ первый WebElement илиNoSuchElementException.find_elements(By.X, "val")→ список WebElement или[](без исключения).element.is_displayed()→ True/False — виден ли элемент.element.text→ видимый текст.
Цель: закрепить локаторы перед переходом к продвинутым техникам Selenium (урок 07).
📖 О чём этот урок
Это урок-повторение блока «Локаторы Selenium». Мы закрепляем всё, что изучали в уроке 05: что такое локатор, как работать с DevTools, стратегии поиска By.*, CSS-селекторы, XPath, методы find_element/find_elements, свойство .text, метод is_displayed() и обработку исключения NoSuchElementException.
Что повторим
- Определение локатора веб-элемента
- Как открыть DevTools и скопировать локатор
- CSS-стратегии: по ID, name, class, вложенности, частичному атрибуту
- XPath-стратегии: по ID, name, class, тексту, вложенности, частичному атрибуту
- Отличие
/(прямой потомок) от//(любой потомок) в XPath - Отличие
>(прямой потомок) от пробела (любой потомок) в CSS - Метод
find_element(): синтаксис, поведение при ненахождении - Обработка
NoSuchElementException - Свойство
.text: что считывает, что не считывает - Метод
is_displayed(): когда возвращает True/False - Метод
find_elements(): отличие отfind_element() - Разбор задания и ДЗ из источника: авторизация на the-internet + itcareerhub.de
📚 Что повторить перед изучением
- ← Урок 05: Локаторы Selenium — By.ID, By.CSS_SELECTOR, By.XPATH
- Стратегии By.*: ID, NAME, CLASS_NAME, TAG_NAME, LINK_TEXT, CSS_SELECTOR, XPATH
- Запуск браузера:
driver = webdriver.Chrome(), фикстура pytest - Основы HTML: теги, атрибуты
id,class,name,href
🎯 Что изучать дальше
- → Урок 07: Расширенные практики Selenium
- Явные ожидания:
WebDriverWait+expected_conditions - Действия с элементами:
send_keys(),clear(),submit() - ActionChains: наведение, drag-and-drop, двойной клик