Kotlin QA Engineer | OTUS
Kotlin QA Engineer

Автоматизация тестирования на Kotlin

Знания и опыт разработки тестов для всех платформ, где используется Kotlin

Длительность обучения:

4 месяца

4 ак. часа в нед.

Формат:

Online

Начало занятий:

27 апреля

Дни занятий:

Чт 20:00, Пн 20:00

Что даст вам этот курс
Знания и практический опыт разработки тестов и рефакторинга кроссплатформенных приложений на языке Kotlin для мобильных, веб-платформ, систем Enterprise-уровня и решений для встраиваемых систем.

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

Объединяющей идеей курса является всесторонняя автоматизация и использование тестов в системах непрерывной интеграции.


На кого ориентирован курс?

Курс рассчитан на разработчиков на любом ООП-языке программирования с опытом работы от 1 года, желающих улучшить свои навыки в автоматизации тестирования и создании CI/CD, либо тестировщиков с опытом работы от 1 года, которые хотели бы научиться создавать автоматические тесты для всех уровней приложения (включая интеграционные тесты).

Какие навыки получат студенты на курсе?

Использование актуальных возможностей Kotlin для создания максимально полного покрытия тестами сложных многокомпонентных приложений (в том числе с графическим интерфейсом).
 
Создание тестовых данных и использование инъекции зависимостей для подмены объектов при выполнении тестирования.
 
Уверенное понимание и применение механизмов синхронизации при тестировании асинхронных компонентов и распределенных систем.
 
Выполнение нагрузочного тестирования, автоматических тестов на наличие уязвимостей, проверки соответствия стиля кода принятым правилам.
 
Владение основными системами сборки приложений и встраивания автоматизированного тестирования в конвейер сборки в наиболее востребованных системах непрерывной интеграции.


Ключевые особенности курса:

  • Тестирование интерфейсов на Jetpack Compose с инъекцией зависимостей через Hilt;
  • Полное встраивание тестов в конвейер непрерывной интеграции;
  • Автоматическая проверка домашних заданий на статическом анализаторе.
Автоматизация проверки доступности мобильного приложения (Accessibility), 5 апреля в 20:00
Научимся проверять готовность мобильного приложения для использования людьми с ограничениями здоровья. Также готовность автоматически проверять соответствие требованиям визуальной контрастности, адаптации верстки под увеличенный шрифт, наличие семантической разметки для вспомогательных инструментов для приложений Android (XML и Compose) и iOS (Flutter и KMM). Научимся использовать инструменты автоматических проверок и создавать собственные валидаторы для реализации сложных визуальных проверок.
Основные темы открытого урока:
- Cтандарты и методы проверки соответствия требованиям Accessibility
- Разметка семантической информации в мобильных приложениях Android XML, Jetpack Compose, KMM и Flutter
- Разработка тестов с использованием Accessibility Test Framework для Android и Google Scanner for A11y (KMM)
- Создание валидаторов для сложных визуальных проверок
Ведет
Дмитрий
Золотов
Предыдущий открытый вебинар
Возможности Kotlin DSL для тестирования., 19 апреля в 20:00
Разберем возможности которые предоставляет Kotlin в части создания DSL и использование их для тестирования.
Основные темы открытого урока:
- Что такое Kotlin DSL
- Создание своего DSL
- Применение DSL для тестов
Дмитрий
Синицын
Предыдущий открытый вебинар

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

Дмитрий Золотов
Flutter Developer, Yandex
Анастасия Ахраменко
Дмитрий Терехов
Бэкенд-разработчик на Kotlin
Дмитрий Синицын
Максим Рогожников
Ведущий инженер по производительности, Тинькофф
Дмитрий Свиридов
Анна Добросердова
СберЕаптека
DevOps, FullStack разработчик (Flutter/Python/Kotlin/GoLang/C++), системный администратор, приглашенный преподаватель в ИТМО, исследователь технологий электронного обучения.
Опыт работы - 23 года.


Руководил межфакультетской лабораторией перспективных информационных технологий в РГПУ им. А. И. Герцена, участвовал в создании и масштабировании ресурсов для электронного обучения (в т.ч. проект "Российская электронная школа"), проектировал и разрабатывал высоконагруженные веб-приложения и системы автоматизации. Контрибьютор в проект ReOpenLdap. Разрабатывал архитектуру отказоустойчивых конфигураций гибридного облака на основе Consul и Kubernetes, сервисных сетей, интеграционных платформ с использованием AMQP. Также являюсь преподавателем по компьютерным сетям, DevOps, операционным системам, мультимедиа-технологиям. Руководил отделом автоматизации процессов в финансовой организации, в которой был консультантом и DevOps по миграции систем с использованием облачных технологий, а также разработчиком для Android/iOS.

Закончил Российский Государственный Педагогический Университет, 2002, учитель физики. Автор серии вебинаров по Kubernetes и кроссплатформенной разработке: https://www.youtube.com/channel/UCs_AMB-HbhHzMhE0VdBZByg

Руководитель программы
15 лет в тестировании, более 5 лет занимается автоматизацией тестирования.
Начинала с автоматизации на Java, в 2020 году перешла на Kotlin.
Занимается автоматизацией тестирования backend, а также разрабатывает вспомогательные приложения для нужд тестирования.

Преподаватель
Программировать начал с 2014 года под встраиваемые системы на языках С/С++. Писал ПО для оборонки, программировал микроконтроллеры. Осознав, что делает в своей жизни что-то не то, начал искать себя - писал под мобилки (iOS, Android), изучил фронтенд, а после стал искать работу на JVM-стеке. Устроившись Java-разработчиком, понял, что нашёл свое предназначение. Мир бэкенда открыл для него достаточно много интересных направлений и технологий.

Любит автоматизацию, консоль, девопс, писать код и помогать людям. В свободное время пишет скрипты на Python для автоматизации своей работы.

Преподаватель
4 года в тестировании и автоматизации.
Начинал с разработки на Java, перешел на Kotlin в 2019 году.
Разрабатывает автотесты и фреймворки для автотестов для Api и Ui тестов. Также пишет вспомогательные приложения для нужд тестирования.
Работал в таких компаниях, как Тинькофф Банк, Сбербанк, Киви Банк.

Преподаватель
Team lead команды нагрузочного тестирования. В тестировании производительности более 5 лет, в IT более 10 лет. Спикер конференций QA и LT.
Занимался организацией и проведением тестированием производительности в топ банках РФ, телкоме, ритейле, госуслугах и зарубежных проектах.
Работал с инструментами: Apache JMeter, Яндекс.Танк, Gatling, HP (Microfocus) Loadrunner, Performance center, k6; анализа производительности БД Oracle, PosgresSQL, MongoDB; инструменты CI/CD, управления/настройки мониторинга и тестовых стендов.

В 2016 году окончил магистратуру ИТМО по специальности "Физика низких температур". Работы для инженера-криогенщика было не густо, в связи с чем решил вспомнить школьное увлечение программированием и связать профессиональную деятельность с IT. Изначально нравились мобильные приложения, поэтому в начале 2018 года пришел сначала в ручное тестирование нативных и кросплатформенных приложений, затем разобрался с их автоматизацией. Постоянно изучая новые области, перешел в разработку автотестов для серверных приложений, чем преимущественно и занимается последние 1,5 года. За все время приходилось пощупать множество технологий: Kotlin, Swift, PHP, JS, Python.

Преподаватель
Больше 5-ти лет в тестировании. Опыт развития от ручного тестировщика до автоматизатора.

Были проекты, на которых автоматизацию вводила с нуля - были и те, где поддерживала тесты.

Преподаватель
Дмитрий
Золотов
Анастасия
Ахраменко
Дмитрий
Терехов
Дмитрий
Синицын
Максим
Рогожников
Дмитрий
Свиридов
Анна
Добросердова

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

Дмитрий Золотов
Flutter Developer, Yandex
DevOps, FullStack разработчик (Flutter/Python/Kotlin/GoLang/C++), системный администратор, приглашенный преподаватель в ИТМО, исследователь технологий электронного обучения.
Опыт работы - 23 года.


Руководил межфакультетской лабораторией перспективных информационных технологий в РГПУ им. А. И. Герцена, участвовал в создании и масштабировании ресурсов для электронного обучения (в т.ч. проект "Российская электронная школа"), проектировал и разрабатывал высоконагруженные веб-приложения и системы автоматизации. Контрибьютор в проект ReOpenLdap. Разрабатывал архитектуру отказоустойчивых конфигураций гибридного облака на основе Consul и Kubernetes, сервисных сетей, интеграционных платформ с использованием AMQP. Также являюсь преподавателем по компьютерным сетям, DevOps, операционным системам, мультимедиа-технологиям. Руководил отделом автоматизации процессов в финансовой организации, в которой был консультантом и DevOps по миграции систем с использованием облачных технологий, а также разработчиком для Android/iOS.

Закончил Российский Государственный Педагогический Университет, 2002, учитель физики. Автор серии вебинаров по Kubernetes и кроссплатформенной разработке: https://www.youtube.com/channel/UCs_AMB-HbhHzMhE0VdBZByg

Руководитель программы
Анастасия Ахраменко
15 лет в тестировании, более 5 лет занимается автоматизацией тестирования.
Начинала с автоматизации на Java, в 2020 году перешла на Kotlin.
Занимается автоматизацией тестирования backend, а также разрабатывает вспомогательные приложения для нужд тестирования.

Преподаватель
Дмитрий Терехов
Бэкенд-разработчик на Kotlin
Программировать начал с 2014 года под встраиваемые системы на языках С/С++. Писал ПО для оборонки, программировал микроконтроллеры. Осознав, что делает в своей жизни что-то не то, начал искать себя - писал под мобилки (iOS, Android), изучил фронтенд, а после стал искать работу на JVM-стеке. Устроившись Java-разработчиком, понял, что нашёл свое предназначение. Мир бэкенда открыл для него достаточно много интересных направлений и технологий.

Любит автоматизацию, консоль, девопс, писать код и помогать людям. В свободное время пишет скрипты на Python для автоматизации своей работы.

Преподаватель
Дмитрий Синицын
4 года в тестировании и автоматизации.
Начинал с разработки на Java, перешел на Kotlin в 2019 году.
Разрабатывает автотесты и фреймворки для автотестов для Api и Ui тестов. Также пишет вспомогательные приложения для нужд тестирования.
Работал в таких компаниях, как Тинькофф Банк, Сбербанк, Киви Банк.

Преподаватель
Максим Рогожников
Ведущий инженер по производительности, Тинькофф
Team lead команды нагрузочного тестирования. В тестировании производительности более 5 лет, в IT более 10 лет. Спикер конференций QA и LT.
Занимался организацией и проведением тестированием производительности в топ банках РФ, телкоме, ритейле, госуслугах и зарубежных проектах.
Работал с инструментами: Apache JMeter, Яндекс.Танк, Gatling, HP (Microfocus) Loadrunner, Performance center, k6; анализа производительности БД Oracle, PosgresSQL, MongoDB; инструменты CI/CD, управления/настройки мониторинга и тестовых стендов.

Дмитрий Свиридов
В 2016 году окончил магистратуру ИТМО по специальности "Физика низких температур". Работы для инженера-криогенщика было не густо, в связи с чем решил вспомнить школьное увлечение программированием и связать профессиональную деятельность с IT. Изначально нравились мобильные приложения, поэтому в начале 2018 года пришел сначала в ручное тестирование нативных и кросплатформенных приложений, затем разобрался с их автоматизацией. Постоянно изучая новые области, перешел в разработку автотестов для серверных приложений, чем преимущественно и занимается последние 1,5 года. За все время приходилось пощупать множество технологий: Kotlin, Swift, PHP, JS, Python.

Преподаватель
Анна Добросердова
СберЕаптека
Больше 5-ти лет в тестировании. Опыт развития от ручного тестировщика до автоматизатора.

Были проекты, на которых автоматизацию вводила с нуля - были и те, где поддерживала тесты.

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

Отзывы

Андрей
Прежде всего, огромное спасибо всем преподавателям и организаторам данного Курса. Затронуты именно злободневные темы. В результате очень расширил свой кругозор. Да, были некоторые методические недочеты. Но они не помешали учиться. Спасибо, спасибо, спасибо!!!
Читать целиком
Андрей
Прежде всего, огромное спасибо всем преподавателям и организаторам данного Курса. Затронуты именно злободневные темы. В результате очень расширил свой кругозор. Да, были некоторые методические недочеты. Но они не помешали учиться. Спасибо, спасибо, спасибо!!!
Читать целиком

Необходимые знания

- знать любой ООП-язык программирования
- понимать виды тестирования и методы подготовки тестовых значений
- знать основы архитектуры распределенных сетевых приложений и REST API
- распределенные системы контроля версий (git)
- основы реляционных баз данных и языка SQL
Корпоративное обучение для ваших сотрудников
Поможем вашей компании развивать команду! Профиты данного курса для компании: Подробное изучение самых популярных баз данных с возможностью сосредоточиться на тех, которые используются в компании / Оптимизированные стабильные системы / Работа над промышленными задачами во время практики
>
Программа обучения
В процессе обучения вы получите комплексные знания и навыки.
C 27 апреля
Тема 1. Kotlin в сравнении с Java и другими ООП-языками
Тема 2. Коллекции, generic-типы и лямбда-выражения
Тема 3. Функции-расширения, делегаты, DSL
Тема 4. Настройка тестирования в сборке Gradle
Тема 5. Взаимодействие с СУБД для заполнения тестовых данных
Тема 6. Подготовка (генерация) и хранение тестовых данных
C 25 мая
Тема 7. Выбор тестовых данных
Тема 8. Модульные тесты
Тема 9. BDD-тестирование
Тема 10. Статический анализ кода и уязвимостей
Тема 11. Тестирование приложение на Spring Framework
Тема 12. Тестирование производительности и профилирование
Тема 13. Практика
C 22 июня
Тема 14. Инъекция зависимостей и создание моков
Тема 15. Корутины и тестирование асинхронного кода на примере SQL-запросов к базе данных
Тема 16. Тестирование Flow и изменяемых состояний
Тема 17. Тестирование асинхронных распределенных систем (очереди сообщений)
C 13 июля
Тема 18. Основы Android-приложений, обнаружение элементов на Espresso
Тема 19. Тестовые фреймворки Kakao, Kaspresso, расширение Hamcrest
Тема 20. Тестирование приложений на Jetpack Compose
Тема 21. Тестирование Accessibility
Тема 22. Тестирование сетевого слоя
Тема 23. Кроссплатформенное тестирование интерфейса методом "черного ящика"
Тема 24. Практика по тестированию реального приложения
C 7 августа
Тема 25. Kotlin for Backend, автоматизация тестирования API (RestAssured, Postman)
Тема 26. KotlinJS разработка для web
Тема 27. Разработка нативного кода в KotlinNative
Тема 28. Нагрузочное тестирование (Gatling)
Тема 29. Практика
C 24 августа
Тема 30. Настройка Jenkins для запуска тестов
Тема 31. Использование Docker для создания тестовых данных
Тема 32. Интеграция тестов в Gitlab, Github, Bitbucket
Тема 33. Практика
C 7 сентября
Тема 34. Консультация по проектам и домашним заданиям
Тема 35. Защита проектных работ
Скачать подробную программу
Выпускной проект
Вам будут предложено несколько тем проектов, но вы можете выбрать любую распределенную систему с мобильным приложений (включая свой пет-проект или любой доступный open source-проект). Домашние работы направлены на выработку навыков создания тестов, для них будет использоваться два предварительно разработанных приложения.

Дополнительно на курсе вы:
1. Сможете под руководством опытных преподавателей разработать и разместить в своём портфолио полноценный набор тестов для реальных приложений
2. Узнаете, как можно реализовать в тестах сложные сценарии, которые обычно называют как ""это невозможно автоматизировать""
3. Увеличите свой потенциал разработчика, архитектора и DevOps

Процесс обучения

Обучение проходит онлайн: вебинары, общение с преподавателями и вашей группой в слаке курса, домашние задания и получение обратной связи. Вебинары идут два раза в неделю 1,5 часа, сохраняются в записи в личном кабинете. Домашнее задание занимает 3-5 часов. В обучении будут анализировать реальные кейсы неочевидных ошибок реализации и обсуждаться возможные подходы к их тестированию и выявлению. Возникающие вопросы по материалам лекций, домашним заданиям и по выпускному проекту вы сможете задавать преподавателю в слаке или во время вебинаров. Выполнение проектной работы помогает усвоению практических навыков.
Получить консультацию
Наш специалист свяжется с вами в ближайшее время. Если у вас возникли трудности в выборе курса или проблемы технического плана, то мы с радостью поможем вам.
Спасибо!
Мы получили Вашу заявку, в ближайшее время с Вами свяжется наш менеджер.

После обучения вы

1. Повысите свой профессиональный уровень в области автоматизированного тестирования, расширите свои рабочие компетенции и увеличить востребованность на рынке труда
2. Научитесь создавать автоматические тесты для всех компонентов сложных приложений в рабочих или личных проектах
3. Сможете использовать и приносить в рабочую команду философию и подходы DevOps к созданию надежных приложений

На какие вакансии можно претендовать:
Разработчик приложений на Kotlin, инженер DevOps, архитектор распределенных систем

Где, в каких проектах требуются такие специалисты?
SaaS-проекты с мобильными клиентами, Enterprise-системы на Kotlin, встраиваемые решения
Дата выдачи сертификата: 24 сентября 2023 года
Ваш сертификат

онлайн-образование

Сертификат №0001

Константин Константинопольский

Успешно закончил курс «Kotlin QA Engineer»
Выполнено практических заданий: 16 из 16

Общество с ограниченной ответственностью “Отус Онлайн-Образование”

Город:
Москва

Директор департамента образования
ООО “Отус Онлайн-Образование”
Анна Фирсова

Лицензия на осуществление образовательной деятельности
№ 039825 от 28 декабря 2018 года.

онлайн-образование

Сертификат №0001

Константин Константинопольский

Успешно закончил курс «Kotlin QA Engineer»
Выполнено практических заданий: 16 из 16

Общество с ограниченной ответственностью “Отус Онлайн-Образование”

Город:
Москва

Директор департамента образования
ООО “Отус Онлайн-Образование”
Анна Фирсова

Лицензия на осуществление образовательной деятельности
№ 039825 от 28 декабря 2018 года.
Прошедшие открытые вебинары
Открытый вебинар — это настоящее занятие в режиме он-лайн с преподавателем курса, которое позволяет посмотреть, как проходит процесс обучения. В ходе занятия слушатели имеют возможность задать вопросы и получить знания по реальным практическим кейсам.
Рефлексия Kotlin для автоматизации тестирования
Дмитрий Синицын
День открытых дверей
5 октября 2021 года в 20:00
Для доступа к прошедшим мероприятиям необходимо пройти входное тестирование
Возможность пройти вступительное тестирование повторно появится только через 2 недели
Результаты тестирования будут отправлены вам на email, указанный при регистрации.
Тест рассчитан на 30 минут, после начала тестирования отложить тестирование не получится!
Стоимость обучения
Cтоимость указана для оплаты физическими лицами
65 000 ₽
Продолжительность
4 месяца
Начало занятий
27 апреля