
Если сборка идёт на Vite, у тестов появляется своя логика: тот же конфиг, те же трансформации, те же алиасы. Что из этого следует, где Vitest расходится с привычками из Jest и что даёт Browser Mode, когда jsdom перестаёт быть похожим на браузер.
Vitest часто выбирают за скорость и за то, что он говорит с проектом на одном языке: тот же Vite-конфиг, те же плагины, тот же transform для TypeScript, JSX и алиасов. Но быстрый прогон не делает тесты надёжными. Suite разрастается, часть тестов падает через раз, моков в них больше, чем проверяемого поведения, и зелёная галочка превращается в ритуал. Профессиональный тест - это утверждение о наблюдаемом поведении системы, которое падает по делу и объясняет, что именно сломалось.
Эта книга разбирает Vitest от установки до живучего набора. Сначала - фундамент: установка без магии, объяснимый Vite-конфиг, первый тест и то, что вообще стоит тестировать, TypeScript и ESM нативно, структура и точные матчеры. Затем - дисциплина: чистый мир на каждый тест, честная асинхронность, mock functions, шпионы, границы мока модуля и сети, детерминированные часы. Дальше - среды и данные: React и кастомные хуки, Next.js, бэкенд с реальными границами, снимки, coverage, тестирование типов, бенчмарки и in-source. После - масштаб: Test Projects, pools и Browser Mode, Vitest UI и отладка, паттерны живучести, flaky и производительность, CI и миграции.
Материал держится на одном принципе: понимать механизм, а не заучивать рецепты. Там, где обычно дают приём, книга объясняет, почему он работает, чего стоит и когда перестаёт годиться. Поведение и API сверены с документацией Vitest 4 и Testing Library, а не с распространёнными пересказами.
Читать можно по порядку - главы идут от установки к дисциплине, средам и эксплуатации suite - или обращаться к нужной. В конце собран короткий глоссарий терминов и список первоисточников.