
Тесты стоят дорого, когда падают не по делу. Про изоляцию, из-за которой соседний тест не ломает ваш, про моки на границах, а не внутри логики, про снимки, которые не превращаются в мусор, и про набор, переживающий рефакторинг.
Тесты пишут все, а доверяют им немногие. Suite разрастается, прогон замедляется, часть тестов падает через раз, и команда постепенно перестаёт на них смотреть - зелёная галочка превращается в ритуал, а не в гарантию. Причина редко в самом Jest: чаще тест проверяет не то, что важно, зависит от порядка запуска, времени или сети, или моков в нём больше, чем проверяемого поведения. Профессиональный тест - это утверждение о поведении, которое падает по делу и объясняет, что именно сломалось.
Эта книга разбирает Jest от установки до живучего набора. Сначала - фундамент: установка без магии, минимальный объяснимый конфиг, выбор одного пути для TypeScript и ESM, структура и точные матчеры. Затем - дисциплина выполнения: чистый мир для каждого теста, обязательный возврат или await асинхронной работы, mock functions и границы мока модуля, детерминированные часы. Дальше - реальные среды: React глазами пользователя, next/jest, бэкенд с настоящими границами вместо горы моков, снимки как reviewable-контракт. После - масштаб: что показывает и чего не показывает coverage, projects, паттерны живучести, flaky как дефект и CI на воспроизводимость.
Материал держится на одном принципе: понимать механизм, а не заучивать рецепты. Там, где обычно дают приём, книга объясняет, почему он работает, чего стоит и когда перестаёт годиться. Поведение и API сверены с документацией Jest и Testing Library, а не с распространёнными пересказами.
Читать можно по порядку - главы идут от установки к дисциплине, средам и эксплуатации suite - или обращаться к нужной. В конце собран короткий глоссарий терминов и список первоисточников.