Даний курс автоматизованого тестування призначений для тих тестувальників, котрі хочуть кар’єрного розвитку та більшого розміру зарплати. Метою навчання є розуміння процесів автоматизації тестування веб-додатків, використовуючи Selenium WebDriver.
На заняттях Ви отримаєте багато теоретичного матеріалу, а також можливість застосувати всю теорію на практиці, побачити наживо всі проблеми, які здатні виникнути, а також варіанти вирішення даних проблем. Познайомитесь з базовими командами та параметрами налаштування.

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

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

Практичні навички, здобуті в ході курсу, можливо буде використовувати, як для подальшого просування в кар’єрі тестувальника, так і для перекваліфікації і подальшого розвитку в ІТ-сфері.

ПРОГРАММА КУРСУ
1.    Введення. Чому саме автоматизація?

  • Тестування відносно контексту.
  • Що таке автоматизоване тестування та його переваги.
  • В чому важливість автоматизації тестування?
  • Що може бути автоматизованим в ІТ проектах?
  • Які типи тестування піддаються автоматизації, а які ні?
  • 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 – інструмент для мобільної автоматизації, огляд АРІ, додаткових можливостей.
  • Як користуватись Appium desktop UI application, запуск серверу, capabilities.
  • Приклади використання Appium на гібридних та натічних Android додатках.
  • Написання простого фреймворку.