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 лет я отвечал за рост Додо Пиццы, а затем ушел в стартап. Все это время я изучал, как тестировать, как это влияет на процессы и архитектуру и как помогает приложению расти. В книге рассказываю итоги: как писать мало тестов с высокой эффективностью и как на весь процесс тестирования повлиял искусственный интеллект.
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. Книга пишется открыто: эти главы уже доступны, остальные добавляются бесплатно.
- 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. Сводим воедино все требования к тестам из разобранных примеров.
- 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, чтобы тесты читались как обычные предложения.
- 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.Описываем входы и ожидаемый результат — тесты генерируются автоматически.
Pages from the book Страницы из книги
Get the book Купить книгу
A one-time purchase unlocks every chapter, with lifetime access as new ones land. Разовая покупка открывает все главы. Новые главы добавляются бесплатно, доступ — навсегда.
Every chapter published so far, plus everything still to come — at no extra cost. Все опубликованные главы и всё, что появится дальше — без доплат.
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.





