jest
Моки и стабы
Модульное тестирование
TDD
Property-based
Тестирование

Jest

Навык писать автотесты на JavaScript, тестировать приложения и повышать их качество, улучшая надёжность кода

Начать обучение

Входит в подписку (более 50 навыков)

Евгений Филиппов

выпускник Хекслета

Программа обучения

Причины тестирования

Понимание роли тестирования в разработке, определение задач, которые должны решать тесты, преимущества автоматизации перед ручным тестированием

Утверждения

Знакомство с модулем assert и его функциями, использование assert для проверки условий

Библиотека power-asser

Анализ и улучшение выводов утверждений, упрощение отладки тестов с помощью power-assert

Знакомство с Jest

Настройка и конфигурация Jest в проекте, базовое написание и запуск тестов, структура тестового проекта на Jest

Матчеры Jest

Основные матчеры: toBe(), toEqual(), toMatch(), создание и использование кастомных матчеров

Модульные тесты

Написание тестов для отдельных функций

Подготовка данных

Использование хуков beforeEach() и afterEach(), создание и управление фикстурами для тестов, организация тестовых данных для повторного использования.

Плохие и хорошие практики тестирования

Типичные ошибки при написании тестов, как избежать хрупких и ненадежных тестов

Покрытие кода тестами

Анализ покрытия кода с помощью инструментов, поиск непротестированных участков кода

Разработка через тестирование (TDD)

Принципы и этапы TDD, написание тестов до реализации функциональности

Фикстуры

Подготовка тестовых данных с использованием фикстур, использование фикстур в Jest для упрощения тестов

Тестирование ошибок

Тестирование кода, который выбрасывает исключения, использование матчера toThrow() в Jest

Побочные эффекты

Выявление и изоляция побочных эффектов в коде, сложности тестирования кода с побочными эффектами

Тестирование кода, взаимодействующего с файлами

Восстановление окружения после тестов, использование виртуальной файловой системы

Инверсия зависимостей

Принцип инверсии зависимостей (Dependency Inversion), устранение побочных эффектов при помощи DI

Тестирование HTTP-запросов

Стаббинг HTTP-запросов для изоляции тестов

Моки

Знакомство с мокингом и его отличия от стабов, создание и использование моков в Jest

Property-based тестирование

Принципы тестирования на основе свойств, генерация тестовых данных для property-based тестов

Проекты

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

Теория в удобном текстовом формате — легко читать даже с телефона. Живые примеры помогают понять, как всё работает. Материал выстроен так, чтобы вы двигались шаг за шагом, не упуская важных деталей

Подписка от 2 400 ₽/мес

Этот навык уже входит в подписку. Оформи доступ и открывай все навыки сразу (50+)

Подписаться →
  • 50+ навыков в одной подписке
  • Пожизненный доступ к теории
  • Обучение с ИИ-ассистентом
  • Отмена в любой момент