Сопоставление Middle Тестирование обновлено

Тестовые двойники

Вопрос

Сопоставь вид тестового двойника и его описание.

Попробуйте сами

Нажмите слева, потом подходящее справа.

Показать ответ и разбор

Коротко

Термины из классификации тестовых двойников. На практике в Vitest и Jest vi.fn() умеет быть и стабом, и моком, и шпионом, но на собесе ждут понимания разницы: стаб подставляет ответы, мок проверяет взаимодействие, шпион наблюдает за настоящим кодом, фейк работает по-настоящему, но упрощённо.

Правильные пары

Stub
возвращает заранее заданные ответы
Mock
проверяет, какие вызовы и с какими аргументами были
Spy
оборачивает настоящую функцию и записывает вызовы
Fake
рабочая упрощённая реализация, например база в памяти
Dummy
объект-заглушка, который передают, но не используют

Разбор

Термины из классификации тестовых двойников. На практике в Vitest и Jest vi.fn() умеет быть и стабом, и моком, и шпионом, но на собесе ждут понимания разницы: стаб подставляет ответы, мок проверяет взаимодействие, шпион наблюдает за настоящим кодом, фейк работает по-настоящему, но упрощённо.

Ответьте сами, а не прочитайте

В тренажёре вопрос попадёт в повторения и вернётся, когда начнёт забываться. Плюс билеты с зачётом: 20 вопросов, не больше 2 ошибок.