Разработка тестов на Java с использованием Selenium 2.0

Тренинг сайт события http://software-testing.ru/trainings/

Добавить в календарь:
Поделиться:

Тренер: Баранцев Алексей

За прошедшие несколько лет инструмент автоматизации тестов для веб-приложений Selenium приобрел фантастическую популярность.

Владение этим инструментом стало одним из обязательных умений для тестировщика-автоматизатора, достаточно посмотреть динамику вакансий, чтобы убедиться в этом.

Если вы хотите считаться профессионалом в области автоматизации тестирования, строчка "я знаю Selenium" обязательно должна присутствовать в вашем резюме.

Простые тесты можно создавать при помощи рекордеров Selenium IDE или Selenium Builder. Но при увеличении объёма и сложности тестов этот подход теряет свою эффективность и привлекательность. Профессионалы пишут тесты на языках программирования.

Основным "официальным" языком программирования для Selenium является Java, потому что большая часть самого Selenium реализована на этом языке и все новые возможности сначала реализуются на Java, а потом переносятся в реализации на других языках – .Net (C#), Ruby, Python.

Этот курс предназначен для тех, кто хочет освоить программный интерфейс Selenium 2.0 и научиться разрабатывать автотесты для веб-приложений на языке программирования Java.

Однако, данный курс не предназначен для изучения языка Java, целью является изучение интерфейса Selenium на языке Java. Если Вы не владеете языком программирования, рекомендуем предварительно пройти любой базовый курс обучения либо выучить язык самостоятельно.

Если до этого Вы не занимались автоматизацией и не знакомы с Selenium, то лучше начать с курса Selenium 2.0: стартовый уровень.

Также существует аналогичный тренинг на языке Python и на C#.

 

После прохождения тренинга учащийся будет уметь разрабатывать автоматизированные тесты для веб-приложений на языке программирования Java с использованием инструмента Selenium 2.0, в частности:

  • владеть базовым набором команд Selenium 2.0, эмулирующих действия пользователя (ввод текста, клики мышью),
  • владеть расширенным набором команд Selenium 2.0, эмулирующих действия пользователя (клавиатурные сочетания, перетаскивание элементов мышью и другие),
  • владеть техниками поиска (идентификации) элементов в окне браузера,
  • уметь обеспечивать стабильность и скорость выполнения тестов за счёт правильного использования ожиданий,
  • уметь выполнять проверки фактических данных, полученных из браузера, на соответствие ожидаемым значениям,
  • владеть основными шаблонами проектирования тестов, в том числе шаблоном PageObject,
  • уметь выстраивать архитектуру тестов таким образом, чтобы тесты можно было легко модифицировать и добавлять новые (при небольшом количестве тестов),
  • уметь организовывать инфраструктуру для запуска тестов на сервере непрерывной интеграции.

Занятие 1: инфраструктура создания и запуска тестов

- запуск тестов из среды разработки

- подготовка среды разработки
- создание и настройка проекта для разработки тестов
- запуск тестов из среды разработки
- отладка тестов в среде разработки (пошаговое прохождение, просмотр значений переменных)

- запуск тестов в разных браузерах

- без использования Selenium Server
- с использованием Selenium Server

- тестовые фреймворки JUnit и TestNG

- методы завершения и инициализации
- фабрика браузеров
- группировка тестов в тестовые наборы (suite)

- непрерывный запуск тестов

- сборщики ant, maven, gradle
- сервер непрерывной интеграции Jenkins
- параллельный запуск тестов, Selenium Grid и облачные сервисы

 

Занятие 2: поиск элементов и действия с ними

- открытие страниц приложения
- поиск элементов

- findElement и findElements
- поиск "на странице" и "внутри элемента"
- явные и неявные ожидания
- переключение между окнами
- переключение между фреймами

- действия с элементами

- основные операции с элементами – click и sendKeys
- расширенный набор операций – класс Actions
- нативные и синтезированные события

- получение свойств элементов

- текст элемента
- значения атрибутов элемента

 

Занятие 3: PageObject и другие шаблоны проектирования тестов

- проектирование автотестов: чем оно отличается от проектирования ручных тестов
- разделение ответственности

- тесты/фреймворк для управления приложением
- тесты/данные, параметризация тестов
- логика приложения/страницы

- специальные средства для представления страниц

- PageObject и PageFactory
- использование PageObject в AJAX-приложениях
- PageBlocks и другие расширения для более удобной работы с элементами

Комментарии (0):

Оставлять комментарии могут только зарегистрированные пользователи

Для получения embed кода необходимо кликнуть правой
кнопкой мыши на видео и выбрать пункт меню
'Сгенерировать HTML код'

Забыли пароль? Регистрация