Тестирование
Как научиться писать тесты на питоне самому и внедрить это на работе
в Python
3-4 недели
Подойдёт лидам, CTO и обычным разработчикам
Вместо работы вы постоянно чините упавший прод

Пробуете внедрить тесты, но они не приживаются

Тесты есть, а качества не прибавляется

Тесты превратились
в говно и постоянно ломаются

Пытались продать
идею тестов бизнесу, но вас послали

Надоело неделями ждать ручного тестирования, а потом в спешке чинить баги
Курс
Подойдёт
если...
Курс
Подойдёт
если...
Основной курс длится три недели. Бонусная неделя для тарифов с обратной связью.
Что будет на курсе
4 вебинара в записи. Длительностью по 2 часа.
Конспекты и списки дополнительных материалов. Чтобы легко возвращаться и углубляться в тему и чтобы было что сложить в папочку «посмотреть потом».
Пишем тесты на примере реального приложения. В нём всё как в бою: запросы в сеть и в базу, бизнес-логика, миграции и DI. Придётся задуматься о моках, генерации данных, разных уровнях тестов и их читаемости.
Чатик учеников. Чтобы познакомиться и получить поддержку таких же, как вы. А ещё — делиться успешными и неуспешными внедрениями материалов курса (в тарифах с обратной связью).
Q&A-сессия. В конце курса проведём сессию вопросов-ответов, чтобы закрыть все вопросы, которые остались после просмотра вебинаров (в тарифах с обратной связью).
Большая домашка
Программа курса
Примерная нагрузка
8
часов
в неделю
1,5−2 часа на просмотр вебинара


20−30 мин. на разбор домашки
≈5 часов на выполнение своей домашки и проверку другим ученикам курса. На третьей неделе домашки не будет.
1 час на Q&A в конце
в максимальном тарифе
О чём: Никита разберёт базу тестирования на pytest: как работает сбор и выполнение тестов, что такое фикстуры и параметризация, упомянет о хуках, плагинах, моках и стабах.
Вводная неделя
«Базовая практика и теория тестирования с pytest»
Отправим после покупки
В записи
Какую проблему решаем: Выравниваем контекст.
На выходе: Поймём, как написать и куда положить первый тест на проекте.
О чём: Про понятные тесты! Тесты — тоже код. Они, возможно, должны быть даже понятнее, чем код самого приложения. На занятии Никита покажет, как значительно упростить понимание любого теста: разделить данные и поведение. Рассмотрим основные инструменты и стратегии.
Неделя 1
«Читаемые тесты»
Какую проблему решаем: Когда падает непонятный тест — хочется его просто удалить, а не разбираться, что же имел в виду его упоротый автор.
На выходе: Научимся готовить тестовую среду так, чтобы тесты были полезными, — генерить разнообразные, но совместимые с вашим приложением тестовые сущности в читабельном виде.
О чём: Если тесты выполняются долго или работают ненадёжно, то никто не будет их запускать. Никита покажет, как сделать тесты быстрыми и какими способами улучшить их надёжность (спойлер: будет про сферического коня в вакууме).
Неделя 2
«Делаем тесты быстрыми и надёжными»
Какую проблему решаем: Медленные тесты увеличивают feedback-loop,замедляют публикацию, а самое главное — программисты привыкают их ненавидеть, а значит — не писать новые.
На выходе: Научимся делать полезный и негромоздкий тестовый набор, который в будущем будет помогать, а не выращивать время билда до 30 минут.
О чём: Одна из основных проблем тестирования — люди, которые мешают нам писать тесты. Нам нужно научиться работать с ними. Возможно, данный фактор даже важнее знаний внутренностей вашего тестового фреймворка. Никита и Федя расскажут, как они помогают командам начать (или продолжить) писать тесты и работать с людьми.
Неделя 3
«Тесты и жизнь»
Какую проблему решаем: Даже с самыми кайфовыми тестовыми инструментами вашу инициативу легко завалить пассивным сопротивлением. А если без подготовки поговорить о тестах с бизнесом — отказ вообще гарантирован.
На выходе: Получим понятный и исчерпывающий набор нужных действий, чтобы начать писать тесты. Поймём, как продавать тесты разным типам людей.
ПРИМЕР ОДНОЙ НЕДЕЛИ ОБУЧЕНИЯ
Конспект вебинара и презентация
Неделя обучения и содержание
Расписание
Вебинар
Домашнее задание для вашего большого кейса
Список дополнительной литературы
Вебинар 1
Тестирование в Python
Каждый вебинар — 1,5–2 часа, на нём Никита объясняет теорию
Тарифы
Если возникли вопросы или хотите оплатить от юрлица — напишите на  support@tough-dev.school, отвечаем в течение суток.
Мы подключили сервис «Тинькофф.Долями». От рассрочки отличается тем, что нужно заплатить первый взнос в размере 25% от суммы. Остальная сумма делится на четыре равные части и выплачивается раз в две недели. Без договора и одобрений, проценты за услугу платим мы. Для вас бесплатно.
Сервис будет работать только для российских карт.
За курс можно получить налоговый вычет 13%
За курс можно получить налоговый вычет 13%
За курс можно получить налоговый вычет 13%
За курс можно получить налоговый вычет 13%
Согласовываете
Согласовываете с руководителем обучение или знакомите нас с руководителем, чтобы мы вам в этом помогли.
Для юрлиц стоимость немного выше: «Я сам» — 17 000 руб./$213, «В тусовке» — 27 000 руб., VIP — 52 000 руб. Это связано с необходимостью дополнительного документооборота.
Присылаете реквизиты
Присылаете нам на почту реквизиты компании. Обычно их взять можно у HR, на сайте компании в разделе «Контакты» или написав в бухгалтерию. Если ваша бухгалтерия просит какой-то набор документов — приложите список, чтобы мы сразу прикрепили.
2
1
3
Обмениваемся документами
Мы выставляем счёт и отправляем приглашение для обмена документами в Диадок.
Ваша компания оплачивает, а мы выдаём вам доступ к курсу.
Даём доступ
По окончании присылаем закрывающие документы в Диадоке, а ваша бухгалтерия подписывает.
4
Хочу учиться
за счет компании
Сертификат
Всем, кто дойдёт до конца и сдаст все домашки, выдадим сертификат* на русском и английском языке. Сможете добавить в линкедин и хвастаться.
*Для тарифов с обратной связью
Авторы
Независимый CTO, 13 лет руководит программистами. Первый тест написал в 2006 году, застал Python без юникода и Django без миграций.
CTO wemake.services, участник программного комитета на MoscowPythonConf и RussianPythonWeek. Член команды pytest, core-контрибьютор hypothesis, делал коммиты в unittest, топ-80 по коммитам в CPython. Автор курса «Типизация в Python», который прошли более 1,5К человек.
Github Star
Комьюнити Школы
Все выпускники собираются в чате, где помогают друг другу — от бытовых советов по релокации до советов по выбору стека. Сейчас в чате 9 топиков и 700 активных участников.
По окончании курса добавим вас в наше
Отзывы
Александр Птахин
Классный курс! Никита отлично объясняет. И здорово, что подбирается комьюнити, которое помогает в решении затыков.

Набор знаний с практикой, особенно полезных в применении к Питону. Базовые вещи просты для начального внедрения, а мастерство приходит уже с опытом. Было здорово сидеть, кодить и тренироваться отполировать код тестов с помощью тестов и цепкого линтера.

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

Перед курсом чаще ошибался в правильном методе тестирования и инструментах. При этом понимал, что нужно обучать этому разработчиков вокруг. После курса я продвинулся в понимании темы тестирования: на каких уровнях, в каком контексте, как делать правильнее. И продолжаю внедрять у себя на работе и учить коллег.
Владимир Семёнов
Курс даёт навык организовывать тесты так, что их приятно писать, из-за чего они реально работают. Работают в том плане, что разработчики не забивают на них. Вместо того чтобы думать, как же там правильно написать тест, начинаешь думать: "А какой кусок кода ещё можно покрыть?" — потому что всё уже аккуратно структурировано. Приятным бонусом было знакомство с тем, как создавать в команде окружение, подталкивающее к чистому коду, соответствующему бизнес-задачам. После курса начали вводить эту систему у себя в команде и не можем нарадоваться. Теперь прод работает, а мы спокойно спим, даже если вчера выкатили тыщу фич.
Матвей Скирда
Курс очень полезный. Я применял сразу на работе и хочу сказать, что стало намного удобнее, легче и интереснее тестировать проекты. Мне понравились идеи того, что на больших проектах тесты должны быть разнообразными, надёжными и, скажем так, всеобъемлющими. Из курса взял очень много. Начиная с основ и, наверное, до использования мок-сервисов для тестирования основных. Было классно) Рекомендую всем, с кем общаюсь.
Где работают
наши ученики
Участвовать в курсе «Тестирование в Python»
Нажимая на кнопку, вы даёте согласие на обработку персональных данных и соглашаетесь c политикой конфиденциальности
Вопросы-ответы
Если не нашли ответа на вопрос, напишите на support@tough-dev.school. Отвечаем в течение суток.
Другие курсы школы