«Не забудь зробити знімок компоненти!». Стисло про Snapshot-тестування на Jest

Сергій Єрьомін

«І не забудьте зробити знімок (Snapshot) компоненти!»

Ви часто можете почути таку фразу від вашого тим-ліда.

Ні, це не фото на пам’ять з вашою компонентою. І точно не JPEG або PNG.

Snapshot у Jest — це механізм для тестування інтерфейсу користувача, який дозволяє зберегти «знімок» вигляду компоненти на певний момент часу. Цей знімок містить рендерену версію компонента. Під час наступних запусків тестів, Jest порівнює актуальний рендер зі збереженим знімком. Якщо є різниця, тест не пройде, що вказує на те, що вигляд або структура компоненти змінилися.

 

Основні моменти про snapshot-тестування:

  • Створення: Коли ви запускаєте тест вперше, Jest створює snapshot і зберігає його у файлі.
  • Порівняння: При наступних запусках тестів Jest порівнює поточний рендер зі збереженим snapshot.
  • Оновлення: Якщо зміни у компоненті були очікуваними, ви можете оновити snapshot до нової версії.

Snapshot-тестування корисне, коли потрібно стежити, чи компоненти рендеряться очікуваним чином. Воно забезпечує додатковий шар захисту від ненавмисних змін у вашому коді.

Чи можу я побачити зміну шрифта за допомогою Snapshot?

Ні, snapshot-тестування в Jest не дозволяє побачити зміни шрифту, або інших стилів, які не відображаються у вихідному HTML-коді компоненти. Snapshots зберігають лише структуру JSX/HTML, яку рендерить компонента, і не включають інформацію про CSS-стилі, такі як колір, розмір шрифту, або інші візуальні властивості.

Сподіваюся, було цікаво. Дякую, що читаєте!

Цей текст з особистого блогу, опублікований з дозволу автора.

Останні статті

Google почне карати сайти за маніпуляції зі штучним інтелектом

Компанія Google оновила свої правила щодо спаму в пошуку, офіційно поширивши їхню дію на генеративні…

18.05.2026

Microsoft забирає у розробників Claude Code — і змушує повернутись на власний Copilot

Microsoft вирішила відкликати у своїх внутрішніх команд більшість ліцензій на Claude Code від Anthropic і…

18.05.2026

Цифрові клони колишніх партнерів: тривожний феномен набирає популярності

Штучний інтелект давно вийшов за межі робочих інструментів — він проникає у найінтимніші куточки людського…

18.05.2026

Нова затребувана IT-професія: хто такі forward-deployed engineers і чому Google їх шукає

Підрозділ Google Cloud наймає сотні інженерів, які будуть допомагати корпоративним клієнтам впроваджувати продукти на основі…

15.05.2026

Grok Build: Ілон Маск представив власного конкурента Claude Code

Компанія xAI Ілона Маска випустила ранню бета-версію Grok Build — агентного інструменту командного рядка (CLI),…

15.05.2026

Американці готові жити біля АЕС, але не поруч із дата-центром — опитування Gallup

Нове опитування Gallup виявило разючий парадокс у суспільній думці американців: сусідство з атомною електростанцією лякає…

15.05.2026