DevPrep

Все темы › Тестирование программного обеспечения

Как написать моки в Swift без фреймворков: протоколы, замыкания, spy?

Middle PRO

Суть

В Swift нет runtime-подмены методов, поэтому тестовые двойники пишут руками — и это дешевле, чем кажется. Почти всё покрывают три приёма: протокол + класс-двойник, который одновременно записывает вызовы (spy) и отдаёт настраиваемый ответ (stub); структура замыканий, где каждую функцию зависимости подменяют по отдельности; и Result как настройка ответа, чтобы один двойник проверял и успех, и ошибку.

Продолжение ответа с кодом и уточняющими вопросами интервьюера — в приложении DevPrep.

Полный ответ — в DevPrep

Потренируйтесь перед собеседованием

В DevPrep эти ответы превращаются в задачи на минуту: что напечатает код, найди баг, пробное собеседование. По задаче в день.

Скачать DevPrep в App Store