About Unit-Testing on iOS — book cover
A book for iOS developers Книга для iOS-разработчиков

About Unit-Testing on iOS Про тестирование на iOS

For seven years I was responsible for growth at Dodo Pizza, then left for a startup. All that time I studied how to test — how it shapes processes and architecture, and how it helps an app grow. In this book I share what I learned: how to write few tests with high payoff, and how AI reshaped the whole testing process. 7 лет я отвечал за рост Додо Пиццы, а затем ушел в стартап. Все это время я изучал, как тестировать, как это влияет на процессы и архитектуру и как помогает приложению расти. В книге рассказываю итоги: как писать мало тестов с высокой эффективностью и как на весь процесс тестирования повлиял искусственный интеллект.

What's inside Что внутри

Chapters, and more on the way Главы — и это только начало

The book is being written in the open — these chapters are live now, and more land at no extra cost. Книга пишется открыто: эти главы уже доступны, остальные добавляются бесплатно.

1 Mobile testing basics Особенности мобильных тестов
  • App growthРост приложения Why a growing app is exactly when tests start to pay off. Почему на растущем приложении тесты начинают окупаться.
  • Tests across the pyramidПримеры тестов в пирамиде тестирования FreeБесплатно Unit, integration, and UI tests — with concrete examples of each. Модульные, интеграционные и UI-тесты — на конкретных примерах.
    Read it now →Читать →
  • AI and testingИИ и тестирование Where LLMs genuinely speed tests up — and where they get in the way. Где ИИ действительно ускоряет тесты, а где только мешает.
  • Test requirementsТребования для тестов A summary of all the test requirements pulled from the examples so far. Сводим воедино все требования к тестам из разобранных примеров.
2 Writing your first tests Пишем первые тесты
  • TDD kataTDD-ката Test-driven development, one small red-green step at a time. Разработка через тесты — маленькими шагами red-green.
  • Bowling kata (tutorial)Bowling-ката (туториал) An interactive kata: score a game of bowling, test-first. Интерактивная ката: считаем очки в боулинге, начиная с теста.
  • Domain-specific languageDomain Specific Language Shape a small DSL so tests read like plain sentences. Небольшой DSL, чтобы тесты читались как обычные предложения.
3 DependenciesЗависимости
  • DependenciesЗависимости What dependencies are, and why controlling them is what makes code testable.Что такое зависимости и почему их нужно контролировать, чтобы код можно было тестировать.
  • Test doublesТест-даблы FreeБесплатно What you swap a dependency for in a test — the kinds of doubles, and why this book won't use mocks. Чем подменяют зависимость в тесте: виды тест-даблов и почему в книге не будет моков.
    Read it now →Читать →
  • Linear execution in a testПоследовательное выполнение в тесте Techniques that make a test's code run in a straight, predictable line.Техники, которые делают выполнение кода в тесте последовательным и предсказуемым.
  • Legible test failuresНаглядные падения тестов Getting failures that show at a glance where it broke and what diverged.Как добиться падений, которые сразу показывают, где сломалось и что разошлось.
  • Parameterized testsТесты с параметрами Describe the inputs and the expected result — the tests are generated for you.Описываем входы и ожидаемый результат — тесты генерируются автоматически.
4 Networking and view-modelsСеть и тестирование вьюмоделей
5 Testing user flowsТестирование сценариев
6 Testing viewsТестирование вьюшек
7 UI testsUI-тесты
8 TDD and AIРазработка через тесты и ИИ
A look inside Как выглядит

Pages from the book Страницы из книги

Book page: a complex screen flow captured as a short, readable test Book page: contract tests replaying recorded API responses Book page: driving a refactor safely with tests in the TDD kata
Страница книги: сложный сценарий экрана в виде короткого читаемого теста Страница книги: контрактные тесты воспроизводят записанные ответы API Страница книги: читаемая структура теста arrange-act-assert
Start reading Начать читать

Get the book Купить книгу

A one-time purchase unlocks every chapter, with lifetime access as new ones land. Разовая покупка открывает все главы. Новые главы добавляются бесплатно, доступ — навсегда.

About Unit-Testing on iOS Про автотесты на iOS
$30 one-timeразово

Every chapter published so far, plus everything still to come — at no extra cost. Все опубликованные главы и всё, что появится дальше — без доплат.

BuyКупить — or —— или —

One-time purchase unlocks the book for the email you check out with. An all-access subscription unlocks every paid book on bookshelf.dev. Payments handled by our Merchant of Record. Разовая покупка открывает книгу для email, с которым вы оформили заказ. Подписка all-access открывает все платные книги на bookshelf.dev. Платежи — через Merchant of Record.