Курс автоматизированного тестирования предназначен для тех тестировщиков, которые хотят карьерного роста и увеличения заработной платы. Цель курса является изучение процессов автоматизации тестирования веб-приложений при помощи Selenium WebDriver.
На занятиях Вы получите много теоретических знаний, а также возможность применить всю теорию на практике, увидеть в живую все проблемы которые могут возникнуть, а также варианты решения этих проблем. Познакомитесь с основными командами и настройками.

После прохождения курса Вы сможете:

  • Анализировать программы для того чтобы определить: рационально ли будет автоматизация различных процессов тестирования.
  • Свободно ориентироваться и понимать принцип работы простых программ.
  • Полностью или частично автоматизировать тестирование программ при помощи языка программирования Java.
  • Проводить веб-тестирование при помощи инструмента Selenium
  •  Работать с мобильными приложениями автоматизируя разнообразные процессы их тестирования.
  • Самостоятельно производить конфигурацию тестового фреймворка.

Практические навыки, полученные в ходе курса, можно будет использовать как для дальнейшего продвижения в карьере тестировщика, так и для переквалификации и дальнейшего развития IT-сфере. 

ПРОГРАММА КУРСА

1.     Введение. Почему автоматизация?
 

  • Тестирование относительно контекста.
  • Что такое автоматизированное тестирование и его преимущества
  • В чем важность автоматизации тестирования?
  • Что может быть автоматизированным в IТ проектах?
  • Какие типы тестирования поддаются автоматизации,а какие нет?
  • ROI автоматизации и ее значение в Agile ИТ проектах.

2.     Учимся программировать
Изучаем язык программирования Java на необходимом уровне для Automation 
QA специалиста. На занятиях мы рассмотрим:          

  • How JAVA works, JVM, How to install
  • Eclipse installation and configuration

3.     Учимся программировать
Изучаем язык программирования Java на необходимом уровне для Automation 
QA специалиста. Мы рассмотрим:

  • Types and wrappers
  • String
  • Operators
  • Loops
  • Methods
  • Code Convention

4.     Учимся программировать
Изучаем язык программирования Java на необходимом уровне для Automation 
QA специалиста. Мы рассмотрим:

  • Array
  • Java Collection
  • Java Collection Rules

5.     Учимся программировать
Изучаем язык программирования Java на необходимом уровне для Automation 
QA специалиста. Мы рассмотрим:

  • Парадигмы ООП
  • Базовые концепции подражания, полиморфизма и инкапсуляции.

6.     Учимся программировать
Изучаем язык программирования Java на необходимом уровне для Automation 
QA специалиста. Мы рассмотрим: Абстрактные классы и интерфейсы, 
конструкторы, другие ключевые слова ООП в Java.

7.     Учимся программировать
Изучаем язык программирования Java на необходимом уровне для Automation 
QA специалиста. Мы рассмотрим: 3rd party библиотеки, которые часто 
применяются при автоматизированном тестировании.

8.     Учимся программировать
Изучаем язык программирования Java на необходимом уровне для Automation 
QA специалиста. Мы продолжим рассматривать 3rd party библиотеки, которые 
часто применяются при автоматизированном тестировании.

9.     Пишем и запускаем тесты

  • Пишем и запускаем тесты с помощью unit test framework-а - Test NG
  • Рассматриваем особенности и преимущества Test NG.

10.    Изучаем вспомогательные средства в автоматизации
  Изучаем build инструмент maven и scm систему git.

11.   Работа с веб-страницами
Основы html и css, которые нужно знать для автоматизации веб контента, веб 
локаторы, DOM

12.   Работа с веб-страницами
Хpath, css локаторы. Плагины для веб браузеров: Firebug, Firepath

13.    Автоматизируем веб-тестирование с помощью Selenium
Познакомимся с историей возникновения инструмента Selenium

  • Рассмотрим принцип работы Selenium
  • Ознакомимся с плагином для автоматической записи тестов - Selenium IDE
  • Подробно рассмотрим Selenium Java API.

14.   Автоматизируем веб-тестирование с помощью Selenium
Глубже рассмотрим дополнительные особенности и возможности инструмента 
(библиотеки) Selenium. Рассмотрим примеры реализации и поддержки запуска 
тестов на разных браузерах.

15.   Автоматизируем веб-тестирование с помощью Selenium

  • Selenium Grid
  • Что такое grid, hub, node
  • Как запустить тесты параллельно в grid-i
  • Selenium + 3rd party библиотеки
  • Selenium + Sikuli, особенности настройки opencv
  • Selenium + Browsermob proxy, особенности запуска proxy server-a

16.   Учимся правильно проектировать тесты
Automation Framework. Что такое Web Automation Framework на основе Selenium 
WebDriver и какие его главные компоненты.

17.   Учимся правильно проектировать тесты
Расширяем Web Automation Framework:

  • Property Reader
  • Test Logger
  • Test Reporter
  • Test Listeners
  • Screenshot to test report
  • Driver Listener
  • Popular extensions overview.

18.    Автоматизируем тестирование веб-сервисов

  • Что такое веб-сервисы?
  • Ключевые понятия, http протокол, request, response
  • Типы веб-сервисов и их особенности
  • Примеры веб-сервисов и web service API
  • Как тестировать веб-сервисы
  • Трудности в тестировании веб-сервисов
  • Какие инструменты использовать в тестировании веб-сервисов
  • Инструменты для автоматизированного тестирования веб-сервисов

19.   Автоматизируем тестирование веб-сервисов
Automation Testing tools usage:

  • Http Client
  • Rest Assure
  • Soap UI, Soap UI with external library.

20.    Особенности тестирования мобильных приложений

  • Рынок мобильных устройств, типы приложений и т.д.
  • На что следует обращать внимание при тестировании мобильных приложений
  • Checklist for mobile testing
  • Вспомогательные инструменты для тестирования мобильных приложений
  • Cloud сервисы для тестирования мобильного контента
  • Обзор инструментов для автоматизированного тестирования мобильных приложений

21.   Mobile Test Automation. Appium

  • Инструменты для автоматизации мобильных приложений
  • Инструменты single platform, multi platform
  • Appium - инструмент для мобильной автоматизации, обзор API, дополнительных возможностей
  • Как пользоваться Appium desktop UI application, запуск сервера, capabilities
  • Примеры использования Appium на гибридных и нативных Android приложениях. Написание простого фреймворка