- Тренинг
- Программа
1. “Галопом по Европе”
- Источники информации о Selenium
- Установка минимального необходимого для разработки и выполнения тестов ПО: Java, среда разработки, браузеры, selenium-server-standalone
- Запуск браузера на локальной машине
- Открытие страниц приложения
- Базовые средства поиска элементов: findElement
- Базовые действия: click, sendKeys
- Базовые способы получения свойств элементов: getText, getAttribute
2. Всё про запуск браузеров: Firefox, Chrome, Opera, Safari, Internet Explorer, PhantomJS, HtmlUnit
Локальный запуск браузеров
Удаленный запуск браузеров с использованием Selenium Server
Особенности запуска браузеров на Windows и на Linux
Кастомизация профиля Firefox: подключение плагинов, настройка автоматического сохранения файлов и т.д.
Работа с cookies
Настройка работы браузеров через прокси-сервер
Запуск нескольких браузеров одновременно
Автоматический периодический перезапуск браузера
Ожидание загрузки страниц
Вспомогательный класс BrowserFactory
3. Всё про поиск элементов и ожидания
Имплицитные (неявные) ожидания при поиске элементов
Стратегии поиска: id, name, class, xpath, css
Получение списка элементов: findElements
Поиск “по цепочке” (chained)
Использование executeScript для поиска
Эксплицитные (явные) ожидания
Тонкая настройка ожиданий: таймаут, частота проверок и другие параметры
Вспомогательный класс WaitWebElement
Дополнительные предопределенные условия: ajaxComplete, atLeastOneElementPresent и др.
4. Всё про работу с элементами
Получение текста: getText
Видимые и невидимые элементы
Получение атрибутов: getAttribute
Получение CSS-свойств: getCssValue
Действия мыши с элементами разного типа: click
Действия клавиатуры с элементами разного типа: sendKeys
“Высокоточное оружие”: Actions – наведение мыши, клики “со сдвигом”, клик правой кнопкой, drag-n-drop
5. Всё про окна, фреймы и алёрты
Получение списка окон
Переключение в нужное окно
Открытие нового окна
Получение списка фреймов
Переключение в нужный фрейм
Ручная обработка алёртов
Автоматическая обработка алёртов
6. Вспомогательные средства
Журналирование действий
Снятие скриншотов
BrowserMob Proxy
Selenium Grid
Сервер непрерывной интеграции (Jenkins)