Курс на Stepik
Обложка курса «Go: тестирование и стандартная библиотека» на Stepik
Бесплатно

Go: тестирование и стандартная библиотека 0.000

Открыть на
STEPIK.ORG

Научитесь покрывать код тестами так, как это делают в командах на Go: table-driven, subtests, фейки и внедрение зависимостей, httptest, покрытие, фаззинг и бенчмарки — плюс рабочие пакеты stdlib: io, encoding/json, time, io/fs, regexp, slices. 207 задач с автопроверкой в браузере на Go 1.26 и капстоун — покрытие тестами сервиса заказов. Для тех, кто уже пишет на Go, но тесты пишет «когда останется время».

Показатель Текущие показатели Рост
Значение 🏆 Рейтинг 3 дн 7 дн 30 дн
Количество учеников на курсе «Go: тестирование и стандартная библиотека»Учеников на курсе 1
Сертификаты, выданные на курсе «Go: тестирование и стандартная библиотека»Сертификатов выдано 0
Отзывы о курсе «Go: тестирование и стандартная библиотека»Отзывов получено 0
Рейтинг курса «Go: тестирование и стандартная библиотека»Рейтинг курса 0.000
Уроки в курсе «Go: тестирование и стандартная библиотека»Количество уроков 34
Тесты в курсе «Go: тестирование и стандартная библиотека»Количество квизов 50
Задачи с кодом в курсе «Go: тестирование и стандартная библиотека»Количество задач с кодом 207
Обновления курса «Go: тестирование и стандартная библиотека»Обновления курса
Дата публикации курса «Go: тестирование и стандартная библиотека»Дата публикации курса
Последнее обновление курса «Go: тестирование и стандартная библиотека»Последнее обновление

Чему вы научитесь

  • Писать юнит-тесты пакетом testing: подтесты, table-driven, t.Helper, аккуратные сообщения об ошибке
  • Подменять зависимости фейками и стабами через интерфейсы и внедрение зависимостей — без внешних библиотек
  • Тестировать HTTP-код через httptest: сервер-дублёр, ResponseRecorder, инъекция Clock вместо time.Now
  • Измерять и читать покрытие, писать Example-функции для документации, запускать фаззинг и бенчмарки
  • Работать с потоковым вводом-выводом: io.Reader и io.Writer, bufio, io.Copy — и тестировать их на буферах
  • Сериализовать данные: encoding/json с тегами и своими маршалерами, CSV и XML
  • Уверенно пользоваться рабочими пакетами stdlib: time, os и io/fs (включая fstest.MapFS), regexp, sort, slices, maps
  • Покрыть тестами готовый сервис заказов shopdb с тремя внешними зависимостями — капстоун курса

О курсе

Научитесь покрывать код тестами так, как это делают в командах на Go: table-driven, subtests, фейки и внедрение зависимостей, httptest, покрытие, фаззинг и бенчмарки — плюс рабочие пакеты stdlib: io, encoding/json, time, io/fs, regexp, slices. 207 задач с автопроверкой в браузере на Go 1.26 и капстоун — покрытие тестами сервиса заказов. Для тех, кто уже пишет на Go, но тесты пишет «когда останется время».

Для кого этот курс

Курс — для тех, кто пишет на Go и хочет покрывать код тестами уверенно.

  • Разработчикам на Go, которым на ревью пишут «нет тестов», а времени разбираться, как их писать правильно, не было.
  • Джунам, которые пишут тесты «по одному на функцию» и не знают, как тестировать код с базой, HTTP-вызовами и time.Now.
  • Тем, кто идёт на собеседование уровня middle: table-driven, моки через интерфейсы, покрытие и бенчмарки — стандартные вопросы.
  • Выпускникам курсов «Go с нуля» и «Go: идиоматичный код», которым нужен рабочий минимум стандартной библиотеки: io, json, time, fs, regexp, slices.

Начальные требования

Что нужно:

  • Базовый и идиоматичный Go: функции, структуры, слайсы и мапы, интерфейсы, ошибки. Это курсы «Go с нуля» и «Go: идиоматичный код».
  • Компьютер с браузером и интернетом.

Что НЕ нужно:

  • Не нужен опыт написания тестов: курс начинается с первого теста на пять строк.
  • Не нужны сторонние библиотеки: ни testify, ни моки-генераторы — всё делается стандартной библиотекой, как и принято в Go.
  • Не нужно ничего устанавливать: задачи решаются и проверяются в браузере на движке Go 1.26.
  • Не нужно проходить курс по конкурентности: он этому курсу не пререквизит.

Преподаватели курса

Как проходит обучение

  • Формат: 8 модулей, 34 урока, 416 коротких шагов. Текстовые лекции с примерами на домене shopdb, без видео — читается с телефона.
  • Практика: 62 % шагов — активные. 207 задач на Go с автопроверкой и 50 интерактивных тестов; в каждом модуле практикум.
  • Проверка: скрытые тесты на движке Go 1.26.1, вердикт мгновенно. Задачи «напиши тест» проверяются мета-тестом: ваш тест прогоняется против правильной и сломанной реализаций — он должен пропустить первую и поймать вторую.
  • Темп: свой, без дедлайнов. Доступ бессрочный, попыток неограниченно.
  • Поддержка: комментарии под каждым шагом.

Ориентир нагрузки: при 6–8 часах в неделю курс проходится примерно за 4–6 недель; общий объём — около 34 часов.

Что вы получите

  • Навык покрывать тестами реальный код: изолировать зависимости, подменять время и файловую систему, тестировать HTTP-обработчики.
  • Рабочее знание стандартной библиотеки: io и bufio, encoding/json, csv/xml, time, io/fs, regexp, sort/slices/maps.
  • 207 решённых задач с автопроверкой и 50 тестов на сквозном домене интернет-магазина.
  • Капстоун: покрытый тестами сервис заказов shopdb — артефакт в портфолио и готовый пример на собеседовании.
  • Бессрочный доступ к материалам и обновлениям, сертификат Stepik.
  • Мост дальше: «Go: веб-сервисы и базы данных — REST API + PostgreSQL» — https://stepik.org/course/297083.

Нагрузка

6–8 часов в неделю, 4–6 недель (общий объём ~34 часа)

Расскажите о курсе друзьям