День открытых дверей по курсу «Java QA Engineer» 16.03.2018 в 20:00 | OTUS
OTUS исполняется 3 года!
Скидки до 30% в честь дня рождения! Успейте купить курс по выгодной цене ➞
Выбрать курс

Курсы

Программирование
MS SQL Server разработчик AWS для разработчиков CI/CD на AWS, Azure и Gitlab Архитектура и шаблоны проектирования
-20%
Разработчик C++
-20%
Разработчик Java
-20%
React.js разработчик
-20%
Интенсив "Оптимизация в Java"
-50%
Framework Laravel
-30%
Базы данных
-20%
Разработчик на Spring Framework
-20%
Разработчик Golang
-10%
Разработчик C#
-10%
Team Lead 2.0
-15%
Vue.js разработчик
-20%
Разработчик Java Enterprise ReactJS/React Native-разработчик Разработчик голосовых ассистентов и чат-ботов
Специализации Курсы в разработке Подготовительные курсы
+7 499 110-61-65
Проходил 16 марта 2018 года в 20:00

День открытых дверей
Автоматизатор в тестировании

День открытых дверей онлайн

Хотите узнать, почему OTUS – больше, чем просто образовательный портал?
Как OTUS дает возможность стать частью сообщества профессионалов и сделать новый шаг по карьерной лестнице?
Почему учиться – не обязанность, а удовольствие и почему тесное сплетение теории и практики в обучении дает эффект синергии?
Приходите к нам на День Открытых Дверей. Формат проведения – онлайн – подключиться можно из любой точки мира!
Преподаватель
Павел Попов

Запись

О курсе

Java QA Engineer
50 000 ₽ 35 000 ₽
4 месяца
Начало 31 марта
В рамках курса вы заглянете под капот популярнейших инструментов автоматизации, чтобы точно знать, что там происходит, и как это можно эффективно использовать. Ключевая цель курса — помочь студентам стать профессионалами, которые смогут самостоятельно принимать технические решения и предвидеть поведение системы. Именно в этом кроется стабильность ваших тестов. Курс подойдет для: - Специалистов по ручному тестированию, проявляющих интерес к переходу в …
Программа курса
Модуль 1
WebDriver
Модуль 2
Architecture
Модуль 3
BDD
Модуль 4
API Testing
Модуль 5
Параллельное выполнение тестов
Модуль 6
Практики CI/CD
Модуль 7
Проект А
WebDriver
Задача этого модуля — копнуть поглубже в устройство WebDriver'а, понять, как он работает и как сделать работу с ним эффективнее. Мы тщательно изучим основные возможности и внимательно рассмотрим нетипичные возможности драйвера. Итогом модуля будет углубленное знание инструмента Selenium.
Главное про автоматизацию тестирования
обозначить уровни автоматизированного тестирования и соответствующие правила;
определить критерии качества автотестов;
проанализировать принципы тестирования;
создавать проект с минимальным набором обязательных атрибутов.
Настраиваем окружение, пишем первый тест
выбрать тестовый фреймворк;
настроить логирование, интеграцию с GIT и параметризированный запуск тестов.
7 апреля, 20:00 — 21:30
Лектор: Карина Кюзалова
Домашние задания: 1
ДЗ
Создать maven-проект. Создать новый maven-проект для автоматизации тестирования

- Откройте IDE
- Создайте новый проект (maven)
- Настройте для проекта файл .gitignore (https://www.gitignore.io/)
- В файле pom.xml укажите зависимости для
-- Selenium Java (https://mvnrepository.com/artifact/org.seleniumhq.selenium/selenium-java)
-- WebDriverManager (https://mvnrepository.com/artifact/io.github.bonigarcia/webdrivermanager)
-- jUnit (https://mvnrepository.com/artifact/junit/junit/4.12)
- Создайте тест, который:
-- с помощью WebDriverManager, настраивает ChromeDriver
-- открывает в браузерах Chrome, FF (параметризодано) страницу https://otus.ru/
- Подключить и настроить log4j

Домашнее задание принимается в виде ссылки на GitHub репозиторий
Срок сдачи: 48 часов до следующего занятия.

Задание со звездочкой (*)
Реализовать отображение результата прогона тестов в Grafana, используя listener (TestNG) или test rule (jUnit).
Подглядывать можно сюда: https://habr.com/ru/company/otus/blog/452908/
Использовать owner http://owner.aeonbits.org/docs/usage/
Конфигурация драйвера при старте, desired capabilities, параметры браузеров, работа с cookies, настройка ожиданий
конфигурировать драйвер при старте, настраивать его под специфичные задачи;
задавать настройки, специфичные для конкретного браузера.
10 апреля, 20:00 — 21:30
Лектор: Василий Хомутов
Локаторы
строить сложные локаторы;
проанализировать, какие возникают ошибки при работе с элементами;
использовать подходы к хранению локаторов.
14 апреля, 20:00 — 21:30
Лектор: Карина Кюзалова
Домашние задания: 1
ДЗ
Реализовать WebDriverFactory класс. Создайте класс WebDriverFactory со статическим методом create();

Метод create() принимает обязательный параметр webDriverName и необязтельный параметр options, а возвращает соответствующий имени вебдрайвер с заданными (если были) options

Примеры использования
WebDriver wd = WebDriverFactory.createNewDriver("chrome");
или
FirefoxOptions options = new FirefoxOptions();
WebDriver wd = WebDriverFactory.createNewDriver("firefox", options);


Про паттерн Factory: https://refactoring.guru/ru/design-patterns/factory-method
Команды чтения и управления состоянием элементов. Свойства элементов html-страницы, получение специфичных свойств элементов
проанализировать, какие свойства элементов страницы доступны для чтения средствами автоматизации и какие проверки можно на них строить;
проанализировать, какие элементы Selenium считает interactable и clickable.
17 апреля, 20:00 — 21:30
Лектор: Василий Хомутов
Ожидания в Selenium. Работа с явными и неявными ожиданиями, сравнение подходов. Знакомство с Expected Conditions
применять явные и неявные ожидания для повышения стабильности тестов и осуществления сложных проверок.
21 апреля, 20:00 — 21:30
Лектор: Карина Кюзалова
Домашние задания: 1
ДЗ
Написать автотест для каталога Яндекс.Маркет. Реализуйте автоматический тест, используя Java + Selenium

Шаги теста:
- Открыть в Chrome сайт Яндекс.Маркет - раздел "Мобильные телефоны"
- Отфильтровать список товаров: RedMi и Xiaomi
- Отсортировать список товаров по цене (от меньшей к большей)
- Добавить первый в списке RedMi
-- Проверить, что отобразилась плашка "Товар {имя товара} добавлен к сравнению"
- Добавить первый в списке Xiaomi
-- Проверить, что отобразилась плашка "Товар {имя товара} добавлен к сравнению"
- Перейти в раздел Сравнение
-- Проверить, что в списке товаров 2 позиции
- Нажать на опцию "все характеристики"
-- Проверить, что в списке характеристик появилась позиция "Операционная система"
- Нажать на опцию "различающиеся характеристики"
-- Проверить, что позиция "Операционная система" не отображается в списке характеристик

Домашнее задание принимается в виде ссылки на GitHub репозиторий
Срок сдачи: 48 часов до следующего занятия.
Работа с нативными окнами браузера: Alert, Prompt, Confirm, iFrame, Tabs, BasicAuth
работать с нативными элементами браузера.
24 апреля, 20:00 — 21:30
Лектор: Семён Вяземский
Upload files, executing JavaScript
решать нестандартные задачи с помощью выполнения JavaScript на странице.
28 апреля, 20:00 — 21:30
Лектор: Василий Хомутов
Architecture
Задача этого модуля — ознакомиться с лучшими практиками организации кода проекта, чтобы его было легче разрабатывать и поддерживать. Речь будет идти не только о широко известном паттерне PageObject, но и о более фундаментальных подходах к разработке. Участники научатся реализовывать наиболее популярные паттерны проектирования (Singleton, Proxy, Observer, Command и т. д.).
Архитектура проекта
применять паттерны проектирования при разработке проекта (Facade, Proxy, Builder, Lazy, Singleton, etc).
8 мая, 20:00 — 21:30
Лектор: Василий Хомутов
Системы контроля версий
работать с Git, будут знать основы GitFlow, научатся работать c GitHub.
12 мая, 20:00 — 21:30
Лектор: Карина Кюзалова
Домашние задания: 1
ДЗ
Повседневные задачи с Git. Работа с локальным и удаленным репозиториями, исправление комитов, решение конфликтов, работа с ветками и практика Code Review.
Page object
применять теорию паттерна.
15 мая, 20:00 — 21:30
Лектор: Василий Хомутов
Домашние задания: 1
ДЗ
Реализуйте автоматический тест, используя Java + Selenium + POM. Шаги теста:
- Открыть https://otus.ru
- Авторизоваться на сайте
- Войти в личный кабинет
- В разделе "О себе" заполнить все поля "Личные данные" и добавить не менее двух контактов
- Нажать сохранить
- Открыть https://otus.ru в "чистом браузере"
- Авторизоваться на сайе
- Войти в личный кабинет
- Проверить, что в разделе "О себе" отображаются указанные ранее данные

Домашнее задание принимается в виде ссылки на GitHub репозиторий
Срок сдачи: 48 часов до следующего занятия.
Page factory, ScreenPlay
использовать паттерны, альтернативные "стандартному" PageObject.
19 мая, 20:00 — 21:30
Лектор: Василий Хомутов
Dependency Injection. Google Guice, PicoContainer, Spring
проанализировать преимущества использования DI в разработке, а также будут уметь внедрять его в свой проект.
22 мая, 20:00 — 21:30
Домашние задания: 1
ДЗ
Разработать архитектуру проекта автоматизированного тестирования. Вам необходимо создать проект автоматизированного тестирования сайта https://habr.com/ru
Тестирование в браузерах Chrome и Firefox - количество тестов не менее 15ти
Уделите внимание архитектуре вашего проекта - примените полученные в модуле знания

Помните, что нет единственно верного решения. Есть решения обоснованные и не очень)
BDD
Задача этого модуля — рассмотреть и научиться применять один из наиболее востребованных на сегодняшний день подходов в автоматизации тестирования. Участники изучат основные инструменты на рынке, научатся внедрять Cucumber в существующий проект.
Подход BDD
объяснить суть подхода и основные инструменты для написания и имплементации сценариев.
26 мая, 20:00 — 21:30
Лектор: Василий Хомутов
Архитектура проекта, использующего BDD
внедрить BDD-подход в существующий проект и посмотреть, как архитектурно меняется проект.
29 мая, 20:00 — 21:30
Лектор: Карина Кюзалова
Домашние задания: 1
ДЗ
Реализовать BDD подход . Реализовать 10 BDD-сценариев для сайта https://www.gosuslugi.ru/
Использовать Page Object и Cucumber
Уделить внимание удобству изменения Step Implementations и возможности переиспользовать шаги написанные на Gherkin
API Testing
Задача модуля — научиться автоматизировать тестирование API. Модуль рассматривает основы протоколов, наиболее популярные инструменты для ручного и автоматизированного тестирования. В результате участники будут уметь писать API-тесты и расширять существующие UI-тесты.
HTTP. Postman, Newman, Fiddler (Charles), curl, SOAP. SoapUI
проанализировать особенности протоколов HTTP и SOAP;
использовать инструменты для ручного тестирования API на этих протоколах.
2 июня, 20:00 — 21:30
Лектор: Василий Хомутов
RestAssured
создавать автоматизированные тесты API на Java.
5 июня, 20:00 — 21:30
Лектор: Семён Вяземский
Использование API-helper'ов в UI-тестах
объединять UI- и API-тесты для более эффективной автоматизации тестирования.
9 июня, 20:00 — 21:30
Лектор: Василий Хомутов
Параллельное выполнение тестов
Задача модуля — освоить способы организации параллельного выполнения тестов — одно из важнейших требований к автотестам.
Параллельное выполнение тестов. Selenium Grid. Настройка и запуск
проанализировать подходы к распараллеливанию тестов;
настраивать и использовать базовые инструмент Selenium Grid.
16 июня, 20:00 — 21:30
Лектор: Семён Вяземский
Современные способы распараллеливания
проанализировать современные подходы к распараллеливанию тестов. Научатся применять Selenoid.
19 июня, 20:00 — 21:30
Лектор: Семён Вяземский
Домашние задания: 1
ДЗ
Написать sh/bat скрипт, готовящий окрежение для параллельного тестирования. Скрипт запускает и и настраивает все необходимые компоненты для параллельного выполнения тестов и сообщает номер прослушиваемого порта.

Сценирий использования:
запустить скрипт -> в консоль вывенден номер порта
запустить тесты, используя RemoteWebDriver, указав в адресе порт из предыдущего шага
Отчетность. Интеграция с Allure. Снятие скриншотов и запись видео
организовывать понятную отчетность по автотестам;
внедрять инструменты для сбора логов тестов, скриншотов приложения и записи видео.
23 июня, 20:00 — 21:30
Лектор: Василий Хомутов
Домашние задания: 1
ДЗ
Добавить интеграцию c системой отчетности к своим тестам.
Практики CI/CD
Современный рынок труда часто выдвигает требование к QA-специалистам — умение работать с CI/CD-системами. Задача модуля — сформировать представление о практиках, инструментах и научиться внедрять автотесты в процесс поставки продукта.
Что такое CI/CD и зачем он нужен
работать с CI- и CD-процессами.
проанализировать основные инструменты и ключевые понятия (Server, agents, jobs. Fail fast, Scheduling, WebHooks).
26 июня, 20:00 — 21:30
Лектор: Василий Хомутов
Jenkins
настраивать и запускать сервис;
интегрировать с git и Docker;
pipeline-подход.
30 июня, 20:00 — 21:30
Лектор: Василий Хомутов
Домашние задания: 1
ДЗ
Настроить сборку и выполнение автотестов в Jenkins.. Запустите и настройте локально Jenkins (сервис или контейнер)

Создайте job
Шаги в job:
1. Выгрузить из вашего репозитория код тестов
2. Собрать проект
3. Выполнить все тесты
4. Прислать письмо вам на почту
-- в письме указаны
-- номер сборки
-- статус сборки
-- ветка реопзитория, из которой был взят код тестов
-- колиечество тестов (всего/успешных/проваленных/пропущенных)
-- общее время выполнения job'ы
Описание шагов "от выгрузки до отчетов по тестированию". Scheduling, webhooks
создавать джобы для прогона автотестов от выгрузки из git до отображения отчета по тестированию;
настраивать запуск джобы по расписанию и по событию.
3 июля, 20:00 — 21:30
Лектор: Семён Вяземский
Домашние задания: 1
ДЗ
Доработать CI для удобной отчетности, выполнения по push в git и выполнять back-up конфигураций. Запустите и настройте локально Jenkins (сервис или контейнер)

Создайте job (можно использовать job, созданную в ходе выполнения прошлого домашнего задания)
Шаги в job:
1. Выгрузить из вашего репозитория код тестов
2. Собрать проект
3. Выполнить все тесты
4. Прислать письмо вам на почту
-- в письме указаны
-- номер сборки
-- статус сборки
-- ветка реопзитория, из которой был взят код тестов
-- колиечество тестов (всего/успешных/проваленных/пропущенных)
-- общее время выполнения job'ы

Настройте job так, чтобы она запускалась после каждого git push'а в ваш репозиторий (использовать webhooks) и каждую ночь в 01:00.
Помимо отчетности по e-mail, отчет должен приходить в канал в slack
Отчеты должны добавляться в систему отчетов (на ваш выбор allure, report portal и подобные)
По окончанию выполнения job, должен выполняться back-up самой job'ы и настроек (можно использовать SCM Sync configuration plugin)
Continuous Testing (Testing Pyramid, Test Metrics)
специалист EPAM поделится своими практиками.
7 июля, 20:00 — 21:30
Лектор: Семён Вяземский
Проект А
В этом модуле участники применят все свои знания и навыки для поднятия процесса автотестирования. От анализа продукта до шага в CI-системе, запускающего тесты и формирующего отчеты.
Stubs
разрабатывать "заглушки" на сторонние сервисы для большей изоляции автотестов.
10 июля, 20:00 — 21:30
Обзор техонологий Appium, Selenide, JDI, Spock, Mocks
проанализировать основные инструменты и вспомогательные библиотеки, которые применяются сегодня в автоматизации;
объяснить, для чего они нужны и как работают.
14 июля, 20:00 — 21:30
Лектор: Василий Хомутов
Домашние задания: 1
ДЗ
Проект.
AI (искусственный интеллект) в автоматизации
специалист EPAM поделится своими практиками.
17 июля, 20:00 — 21:30
Курсовая работа
реализовать проект автоматизации тестирования с применением имеющихся знаний и навыков для заданного приложения.
28 июля, 20:00 — 21:30
Лектор: Семён Вяземский
Домашние задания: 1
ДЗ
Автоматизировать тестирование проекта. Примените, приобретенные на курсе и имеющиеся у вас ранее, знания и навыки для автоматизации тестирования проекта. Инструменты, библиотеки, подход и прочее - все на ваше усмотрение.

Преподаватель

Павел Попов
Эксперт в области автоматического тестирования с опытом работы более 7 лет. Прошел карьерный путь от тестировщика до программиста в тестировании. Управлял командами тестирования, работал в должности менеджера по автоматизации тестирования. Сейчас занимает позицию в Финтех компании, главный офис разработки которой находится на Кипре.
Один из основателей школы автоматизации тестирования Quality Alliance. Постоянно улучшает свои навыки принимая участие на конференциях в качестве докладчика/участника: European Testing Conference, SeleniumCamp, Mail.Ru Meetup, Яндекс.Гости, QACyprusCommunity, Mera DevFest.
Работал преподавателем в Академии при Президенте РФ (слушатели курсов: студенты третьего курса специальности Информационные Технологии).
Имеет почетную грамоту “За многолетнее плодотворное участие в развитии Quality Assurance Alliance клуба vk.com/qa_alliance”.

F.A.Q.: Наиболее часто задаваемые вопросы:

Нужно ли оплачивать обучение до Дня открытых дверей, если я хочу гарантированно попасть в группу?
Да, мы рекомендуем заранее оплатить обучение, чтобы гарантированно попасть в группу. В период проведения Дня открытых дверей резко возрастает количество желающих обучаться, поэтому может случиться так, что к окончанию Дня открытых дверей мест в группе не останется
Кто будет проводить День открытых дверей?
Проводить День открытых дверей будет преподаватель курса.
Как принять участие в Дне открытых дверей?
Для того, чтобы принять участие в Дне открытых дверей, оставьте свой e-mail в поле регистрации на мероприятие. Перед началом Дня открытых дверей мы пришлем вам ссылку, пройдя по которой, вы сможете присоединиться к вебинару.
Какие вопросы будем обсуждать на Дне открытых дверей?
На дне открытых дверей мы поговорим о проекте OTUS (о программе курса, почему мы не принимаем в группы новичков, почему учиться у нас интересно, но сложно), карьерных перспективах выпускников (почему вероятность карьерного роста у лучших студентов стремится к 100%), учебном процессе (оплатах, оценке знаний, сертификатах и прочих аспектах). Также ведущий мероприятия с радостью ответит на все ваши вопросы.
🔥 Скидки до 50% на новые супер-интенсивы!
«Тестирование игр», «Data Engineer», «работа с протоколом BGP». Узнайте подробности в чате ➞