Основное различие между SnapShot и Unit-тестами заключается в том, что Snapshot-тесты никогда не подтверждают правильное поведение функциональных возможностей приложения, а вместо этого выполняют сравнение выходных данных.

SnapshotUnit
ЦельЧтобы получить моментальный снимок результатов работы компонентаДля проверки правильности отдельных блоков кода
Фокус на тестированииВывод компонентов (DOM, пользовательский интерфейс)Вывод функции или модуля (JavaScript)
Тип тестаИнтеграционное тестированиеМодульное тестирование
Что тестируется?Визуализированная разметка компонентаДетали внутренней реализации функции
Методика тестированияВизуализирует компонент и сравнивает результат с сохраненным снимкомВызывает функцию с известными входными данными и сравнивает выходные данные с ожидаемым результатом
Результаты тестаСериализованное представление отрисованных выходных данных компонентаСообщение с утверждением о прохождении / провале с подробной информацией о том, что не удалось
Сопровождение тестовНеобходимо обновить, если изменится визуальный вывод компонентаНеобходимо обновить, если изменится реализация функции
ПреимуществоПомогает выявить визуальные изменения в компонентеТестирует отдельные блоки изолированно, что облегчает точное выявление проблем

Иллюстрация Spapshot -отчета на основе изменений снимков представлена ниже.


Назад