Осень 2023

Обеспечение качества в разработке ПО

Цель курса — Получение студентами теоретических знаний и практических навыков по обеспечению качества ПО.

Описание
Курс состоит из 5 лекций, 4 практических занятий и 2 рубежных контролей (44 академических часов аудиторных занятий и 20 часов – самостоятельных).
Подробнее
Чему научитесь
В результате изучения дисциплины студенты должны

Знать:
- Что такое качество;
- Этапы обеспечения качества;
- Цели тестирования;
- Тестирование на этапе разработки;
- Кривая Боэма;
- Виды тестирования;
- Пирамида тестирования;
- Виды тестовой документации;
- Что такое и что показывает тестовое покрытие;
- Что такое белый и черный ящик;
- Когда стоит автоматизировать тестирование;
- Семейство фреймворков xUnit;
- Принципы юнит-тестирования;
- Инструменты для юнит-тестирования;
- Тестовые заглушки;
- Статический анализ кода;
- Паттерны и антипаттерны разработки тестов;
- Антипаттерны разработки ПО;
- Подходы к разработке тестов: TDD и BDD;
- Особенности тестирования web-приложений;
- Антипаттерны при работе с selenium;
- Что такое и зачем нужен Continuos Intergration;
- Инструменты для Continuos Intergration;
- Что такое Continuos Delivery и Continuos Deployment;
- Что такое и зачем нужно CodeReview;
- Что такое и зачем нужны системы контроля версий (Git);
- Зачем нужны системы управления конфигурациями;
- Задача нагрузочного тестирования;
- Ключевые показатели при нагрузочном тестировании;
- Стратегия проведения нагрузочного тестирования (модель, профиль, точки нагрузки);
- Инструменты для нагрузочного тестирования;
- Какие бывают метрики тестирования;

Уметь:
- Искать баги*;
- Оформлять багрепорты;
- Составлять чек-листы;
- Составлять тест-планы;
- Использовать багтрекинговые системы;
- Измерять тестовое покрытие;
- Писать юнит-тесты;
- Писать функциональные тесты;
- Анализировать результаты нагрузочного тестирования;

Владеть:
- Методом свободного поиска;
- Техниками тест-дизайна;
- Паттернами PageObject;
- Инструментами Selenium;
Подробнее

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

Дмитрий Котегов Дмитрий Котегов

Заместитель технического директора по продуктовой разработке
VP of Engineering в VK Рекламе

Никита Рубинов Никита Рубинов

QA, DevOps, Разработчик в myTarget

Артем Мурадян Артем Мурадян

Выпускник МГТУ им. Н.Э.Баумана

Константин Ермаков Константин Ермаков

Выпускник Технопарка. Программист в VK Рекламе, до разработки в течении 5 лет занимался автоматиз...


Подробнее

Алексей Ершков Алексей Ершков

Фронтенд разработчик, выпускник основной программы и открытых курсов образовательных проектов VK

Даниил Карпов Даниил Карпов

Выпускник МГТУ им. Н. Э. Баумана
Магистр кафедры ИУ5
Спациалист по автоматизации тестир...


Подробнее

Кирилл Борисов Кирилл Борисов

None

Александра Власова Александра Власова

Специалист по тестированию в VK

Михаил Волков Михаил Волков

SDET в myTarget/VK Реклама, бывший ведущий преподаватель курса по Автоматизации тестирования на e...


Подробнее

Программа

Занятие Часы в ауд. + сам. работа

Лекция №1: Введение в Обеспечение качества  
+ ДЗ №1

4 ак. ч. + 2 ак. ч. СР

Лекция №2: Дефекты и тестовая документация  
+ ДЗ №2

4 ак. ч. + 2 ак. ч. СР

Лекция №3: Тестовое покрытие, тест дизайн  

4 ак. ч. + 4 ак. ч. СР

Лекция №4: Модульное тестирование  

4 ак. ч. + 2 ак. ч. СР

Семинар №1: Unit-тесты на JavaScript  
+ ДЗ №3

4 ак. ч. + 4 ак. ч. СР

Рубежный контроль №1: Рубежный контроль по первому блоку  

4 ак. ч. + 4 ак. ч. СР

Лекция №5: Автоматизация тестирования  
+ ДЗ №4

4 ак. ч. + 4 ак. ч. СР

Семинар №2: End-to-End тесты на Python  

4 ак. ч. + 4 ак. ч. СР

Лекция №6: Тестирование мобильных приложений  

4 ак. ч.

Лекция №7: Непрерывная интеграция  

4 ак. ч. + 2 ак. ч. СР

Лекция №8: Devops. Разработка и эксплуатация.  

4 ак. ч.

Лекция №9: Введение в SRE  

4 ак. ч.

Лекция №10: Нагрузочное тестирование  

4 ак. ч. + 2 ак. ч. СР

Рубежный контроль №2: Рубежный контроль по второму блоку  

4 ак. ч. + 4 ак. ч. СР

Лекция №11: Управление тестированием  

4 ак. ч. + 2 ак. ч. СР

Экзамен №1: Итоговое занятие  

4 ак. ч. + 4 ак. ч. СР