Что такое snapshot testing?

Ответ

Snapshot testing - сохранение "эталонного" вывода и сравнение при последующих запусках:

// Пакет spatie/phpunit-snapshot-assertions
public function testRenderPage(): void {
    $html = $this->renderer->render('home');
    $this->assertMatchesSnapshot($html);
    // Первый запуск: сохраняет snapshot
    // Последующие: сравнивает с сохраненным
}

// Обновление snapshots после намеренных изменений:
// vendor/bin/phpunit -d --update-snapshots

Полезно для: HTML-шаблонов, JSON API ответов, сложных структур данных. Snapshots коммитятся в git.

🧠Квиз 🏆Лидеры 🎯Собесед. 📖Вопросы 📚База зн.