Логотип YeaHub

База вопросов

Собеседования

Тренажёр

База ресурсов

Обучение

Навыки

Задачи

Войти

Выбери, каким будет IT завтра — вместе c нами!

YeaHub — это полностью открытый проект, призванный объединить и улучшить IT-сферу. Наш исходный код доступен для просмотра на GitHub. Дизайн проекта также открыт для ознакомления в Figma.

© 2026 YeaHub

AI info

Карта сайта

Документы

Медиа

Назад
Вопрос про IOS: mock, object

Как использовать mock-объект для проверки вызова аналитики?

Вопрос проверяет практическое умение применять mock-объекты для проверки побочных эффектов.

Короткий ответ

Mock-объект подменяет реальную аналитику в тестах. Он фиксирует факты вызовов и переданные параметры. После выполнения тестируемого кода проверяется состояние mock. Таким образом можно убедиться, что аналитика была вызвана корректно. Реальный трекер при этом не используется.

Длинный ответ

Mock-объект позволяет наблюдать за взаимодействием тестируемого кода с зависимостями.

Создание mock-объекта

Mock реализует тот же протокол, что и реальная аналитика.

final class AnalyticsMock: AnalyticsTracking {
    private(set) var events: [String] = []

    func track(event: String) {
        events.append(event)
    }
}

Использование в тесте

Mock передается в тестируемый объект через конструктор.

  • Код выполняется

  • Аналитика не отправляется наружу

  • Все вызовы фиксируются внутри mock

Проверка результата

В тесте проверяется:

  • Количество вызовов

  • Название события

  • Порядок при необходимости

Вывод

Mock-объект делает поведение аналитики наблюдаемым. Это основной инструмент для тестирования вызовов без реальных побочных эффектов.

  • Аватар

    iOS Guru

    Roman Isakov

    Guru – это эксперты YeaHub, которые помогают развивать комьюнити.

Уровень

  • Рейтинг:

    5

  • Сложность:

    5

Навыки

  • IOS

    IOS

Ключевые слова

#mock

#object

Подпишись на iOS Developer в телеграм

  • Аватар

    iOS Guru

    Roman Isakov

    Guru – это эксперты YeaHub, которые помогают развивать комьюнити.