В чём разница между mock, stub и fake?

Senior
311 просмотров
AFK Offer AI

Stub — возвращает заранее подготовленные данные: getUser() → {id: 1, name: "Test"}. Не проверяет вызовы. Mock — проверяет взаимодействие: был ли вызван метод, с какими параметрами, сколько раз. Fake — работающая реализация, но упрощённая: in-memory база данных вместо PostgreSQL. Spy — обёртка над реальным объектом, которая фиксирует вызовы и может переопределять методы. Spy = реальный объект + наблюдение. На практике "mock" часто используют как обобщённый термин для всего этого.

Следующий вопрос

Как тестировать JWT токены?