Jest v30.3.0 вводит defineConfig и mergeConfig для type-safe конфигурации, добавляет setTimerTickMode для fake timers и исправляет динамические импорты с --experimental-vm-modules.
Jest v30.3.0: defineConfig, Timer Tick Mode и ключевые исправления #
Ключевые изменения #
Jest v30.3.0, выпущенный 10 марта 2026 года, вводит улучшения опыта разработчика, модернизирующие конфигурацию Jest и расширяющие возможности fake timers.
Хелперы defineConfig и mergeConfig #
Главная функция — defineConfig и mergeConfig — type-safe хелперы конфигурации, вдохновлённые Vite и Vitest. IDE теперь автодополняет каждую опцию с полной безопасностью типов. mergeConfig позволяет компоновать конфигурации из общих пресетов, упрощая настройку монорепозиториев.
Режим тиков fake timers #
setTimerTickMode даёт детальный контроль над тем, как продвигаются fake timers. Полезно при тестировании компонентов, зависящих от специфического поведения таймеров — animation frames, debounced inputs или polling интервалов.
Критические исправления #
- Динамические импорты с
--experimental-vm-modules: Пользователи теперь могут использовать динамический import() при запуске с опцией Node --experimental-vm-modules. --onlyFailures с ошибками компиляции: Тесты, упавшие из-за ошибок компиляции, теперь корректно перезапускаются при использовании --onlyFailures.- Вывод консоли GHA reporter: Вывод консоли теперь отображается корректно при использовании репортера GitHub Actions с
silent: false. - Вывод coverage с
--json: Вывод coverage CLI сохраняется при комбинации --json с --outputFile.
Влияние на QA-команды #
Хелпер defineConfig — главное улучшение качества жизни разработчика. Исправление динамических импортов ESM разблокирует пути миграции для команд, переходящих с CommonJS. Подробнее в нашем руководстве по Jest.
Часто задаваемые вопросы
Какие основные изменения в Jest v30.3.0?
Jest v30.3.0 добавляет хелперы defineConfig/mergeConfig для type-safe конфигурации, вводит setTimerTickMode для fake timers и исправляет несколько проблем, включая динамические импорты с --experimental-vm-modules.
Что такое defineConfig в Jest?
defineConfig — новая функция-хелпер, обеспечивающая автодополнение и проверку типов для файлов jest.config.ts, аналогично паттерну defineConfig в Vite.
Как обновить Jest до v30.3.0?
Выполните `npm install jest@30.3.0` или `yarn add jest@30.3.0` в вашем проекте.
Стоит ли обновляться до Jest v30.3.0?
Да, обновление до Jest v30.3.0 рекомендуется для получения последних исправлений, патчей безопасности и новых функций. Проверьте changelog перед обновлением в продакшене.
Стабилен ли Jest v30.3.0 для продакшена?
Jest v30.3.0 прошел стандартный процесс релиза и считается стабильным. Как и при любом обновлении, протестируйте существующие тест-сьюты после обновления.
Какие важные изменения в Jest v30.3.0?
Проверьте официальный changelog Jest v30.3.0 для списка важных изменений. Минорные релизы обычно сохраняют обратную совместимость, но проверьте конфигурацию и плагины.
Как обновиться до Jest v30.3.0?
Обновитесь через менеджер пакетов или скачайте с официального сайта. Сначала сделайте бэкап конфигурации, затем обновитесь и запустите тест-сьют для проверки совместимости.
Какие ключевые улучшения в Jest v30.3.0?
Ключевые улучшения включают исправления ошибок, оптимизацию производительности и новые функции. Ознакомьтесь с release notes для подробной информации об изменениях.