1 Модуль: Системы контроля версий (Git). Разработка автотестов на Java. Инструменты автоматизации сборки. JUnit/TestNG
1.1 Введение: чем занимается AQA. Направления профессионального развития. Презентация курса. Основной инструментарий. Системы контроля версий: Git, GitHub: ветвление, клонирование, основные команды.
1.2 Введение в язык программирования. Структура программы, пакеты, типы данных. Операторы. Работа со строками. Assertions. Hamcrest.
1.3 Модификаторы доступа. Классы и объекты. Статические переменные и методы. Классы-обертки. Основы ветвления.
1.4 Основные принципы ООП. Интерфейсы, абстрактные классы. Ключевые слова this, super
1.5 Массивы, списки, циклы
1.6 Коллекции
1.7 Работа с исключениями: ловля, логирование, пробрасывание. Работа с датой
1.8 Работа с файлами. Пишем в файл, читаем из файла. Парсеры. Параметризация тестов.
1.9 Работа с XML. JSON
1.10 Паттерны проектирования. Дженерики. Перечисляемые типы
1.11 Инструмент автоматизации сборки Gradle. Структура проекта. Инструмент автоматизации сборки Maven. Структура проекта
1.12 Структура тестов. Аннотации. Виды отчетов
1.13 Промежуточная аттестация
2 Модуль: Rest API. RestAssured. База данных
2.1 Теория Rest API. Архитектура api автотестов. Автотесты API на RestAssured
2.2 Инструмент Apache HTTP
2.3 Библиотека OkHttp3. Фреймворк Swagger
2.4 Валидация JSON - схемы
2.5 Теория SQL. Подключение комплекса программных интерфейсов JDBC. Автотесты с использованием БД
2.6 Объект-модели Pojo, Hibernate
2.7 Объемы данных NoSQL. Автотесты с БД MongoDB
2.8 Промежуточная аттестация
3 Модуль: UI тестирование Web приложений. Контейнеризация. Основы работы с Docker. CI/CD. Методология разработки программного обеспечения BDD.
3.1 Теория тестирования веб-приложений. Элементы автоматизации
3.2 Инструмент Selenium. Объектная модель документа DOM-модель. WebDriver: конфигурация загрузки. Кроссбраузерные тесты
3.3 Поиск элементов, локаторы и селекторы. Действия с элементами
3.4 Явные и неявные ожидания
3.5 Алерт, Поп-ап. Работа с cookie
3.6 Паттерн Page Object
3.7 Отчетность и скриншоты, Allure
3.8 Фреймворк Selenide
3.9 Тестирование верстки. Ashot/Galen
3.10 Docker
3.11 Теория CI/CD. Jenkins
3.12 Система GitLab CI
3.13 Kafka
3.14 MQ
3.15 Теория BDD. Архитектура проекта. Программный инструмент Cucumber. Язык для описания поведения системы Gherkin
3.16 Промежуточная аттестация
Итоговая аттестация