15 занятий
Занятие 1 - Введение в Selenium
- Что такое Selenium и его компоненты
- Создание виртуального окружения
- Установка Selenium и зависимостей
- Инициализация Chromedriver и Firefox
- Домашнее задание
Занятие 2 - Навигация браузера и поиск элементов
- Управление навигацией браузера
- Спящий код
- Что такое WebElement
- Поиск веб-элемента и его особенности. Часть 1
- Поиск элементов без By
- Поиск множества элементов и работа с ними
- Ваш первый клик
- Домашнее задание
Занятие 3 - Xpath и получение данных из браузера
- Получение URL-страницы
- Получение заголовка страницы
- Получение всего содержимого страницы
- Валидация данных через assert
- Что такое Xpath и как с ним работать
- Xpath - Глобальный поиск
- Xpath - Поиск по уровню вложенности
- Xpath - Поиск по порядковому номеру
- Xpath - Поиск по атрибутам
- Xpath - Поиск по содержимому
- Xpath - Поиск parent по child
- Функция normalize-space()
- Рекомендации по xpath
- Инспектирование исчезающих элементов
- Домашнее задание
Занятие 4 - Работа с полями ввода и клавиатурой. Получение атрибутов элементов
- Получение состояний элементов
- Ввод данных в поля ввода
- Получение атрибутов полей ввода и других элементов
- Очистка полей ввода
- Работа с клавиатурой
- Копирование и вставка
- Тренажеры
- Домашнее задание
Занятие 5 - Опции браузера. Загрузка и скачивание файлов
- Первое знакомство с опциями браузера
- Работа с обьектом опций
- Основные базовые опции браузера
- Стратегия загрузки страницы
- Загрузка файлов
- Скачивание файлов
- Домашнее задание
Занятие 6 - Ожидания
- Неявные ожидания
- Явные ожидания
- Ожидаемые условия
- Кастомные сообщения об ошибках
- Кастомные ожидания
- Домашнее задание
Занятие 7 - WebDriver-мод и User-agent. Работа с Alerts
- Что такое и как использовать User-agent
- Отключение режима WebDriver
- Что такое Alert и как с ним работать
- Принять / отклонить Alert
- Получение текста из Alert
- Ввод данных в Alert
Занятие 8 - Работа с Cookies
- Что такое cookies
- Получение cookies
- Добавление cookies
- Замена cookies
- Сохранение cookies в файл
- Чтение cookies из файла
- Алгоритм авторизации через cookies
- Авторизация через local-storage
- Домашнее задание
Занятие 9 - Радио, чек-боксы, выпадающие списки и мультиселекты
- Что такое чек-бокс
- Клик на чек-бокс
- Статусы чек-бокса
- Нюансы работы с чек-боксами
- Радио-кнопки
- Кодовая база для работы с dropdown
- Стандартный dropdown
- Выборка из dropdown
- Современный dropdown
- Работа с мультиселектом
- Домашнее задание
Занятие 10 - Окна, вкладки и iframes
- Открытие нового окна/вкладки
- Работа с дескриптором
- Получение всех открытых окон/вкладкок
- Переключение между окнами/вкладками
- Закрытие окон и вкладок
- Работа с iframes
- Домашнее задание
Занятие 11 - Actions Chains
- Что такое Action API
- Фундамент для работы
- Клик через цепочку действий
- Двойной клик
- Клик правой кнопкой мыши
- Наведение на элемент
- Пауза в цепочке действий
- Скролл к элементу
- Перетаскивание (drag and drop)
- Клик с удержанием
- Отпускаем кнопку мыши
- Работа с координатами
Занятие 12 - Горизонтальные слайдеры
- Подход к работе
- Реализация разных вариантов
- Примеры с занятия
- Домашнее задание
Занятие 13 - Работа с таблицами
- Основные сущности в таблицах
- Реализация через создание хендлера
- Xpath - Относительный поиск по веб-элементам
- Реализация интерфейса управления таблицей
- Стратегия ленивой загрузки
- Домашнее задание
Занятие 14 - Работа с Datepicker и BasicAuth
- Обход BasicAuth
- Создание интерфейса для работы с datepicker
- Использование JS в Selenium
Занятие 15 - Профили, расширения браузера и работа с Proxy
- Создание профилей
- Использование профилей
- Добавление расширений
- Использование proxy без авторизации
- Использование proxy с авторизацией
Занятие 16 - Перехват HTTP-запросов в Selenium
- Введение в Selenium-wire
- Установка зависимостей
- Быстрый старт
- Подмена ответа от сервера
- Дополнительные функции