Link
Embed
Share
Beginning
This slide
Copy link URL
Copy link URL
Copy iframe embed code
Copy iframe embed code
Copy javascript embed code
Copy javascript embed code
Share
Tweet
Share
Tweet
Slide 1
Slide 1 text
No content
Slide 2
Slide 2 text
iOS TDD Vladimir “farcaller” Pouzanov
Slide 3
Slide 3 text
Как мы используем TDD для разработки
Slide 4
Slide 4 text
Как мы используем TDD для ускорения разработки
Slide 5
Slide 5 text
Как вам использовать TDD для ускорения разработки
Slide 6
Slide 6 text
Цикл TDD
Slide 7
Slide 7 text
Написать тест
Slide 8
Slide 8 text
Написать тест Написать реализацию
Slide 9
Slide 9 text
Написать тест Написать реализацию Смыть, повторить
Slide 10
Slide 10 text
Написать тест Написать реализацию Смыть, повторить
Slide 11
Slide 11 text
Общие проблемы
Slide 12
Slide 12 text
Вы тестируете не то, что необходимо
Slide 13
Slide 13 text
Вы тестируете не то, что необходимо, а то, к чему получается написать тест
Slide 14
Slide 14 text
Вы тестируете не изолированный компонент
Slide 15
Slide 15 text
Вы тестируете не изолированный компонент, а часть общей схемы
Slide 16
Slide 16 text
Вы тестируете не чистое состояние объекта
Slide 17
Slide 17 text
Вы тестируете не чистое состояние объекта, а то, в котором он хоть как-то работает
Slide 18
Slide 18 text
Кто виноват?
Slide 19
Slide 19 text
Неявная реализация MVC где-то между Model и Controller
Slide 20
Slide 20 text
Жесткое связывание
Slide 21
Slide 21 text
Синглтоны
Slide 22
Slide 22 text
Сетевой стек
Slide 23
Slide 23 text
Сложность интеграции OCUnit
Slide 24
Slide 24 text
Широкий набор сторонних фреймворков
Slide 25
Slide 25 text
Что делать?
Slide 26
Slide 26 text
Double-click to edit
Slide 27
Slide 27 text
Dependency Injection
Slide 28
Slide 28 text
Objection
Slide 29
Slide 29 text
Injective
Slide 30
Slide 30 text
Как тестируют в «лучшем» мире
Slide 31
Slide 31 text
Ruby
Slide 32
Slide 32 text
Rails
Slide 33
Slide 33 text
RSpec & Cucumber
Slide 34
Slide 34 text
Kiwi & Cucumber
Slide 35
Slide 35 text
UIAutomation + jasmine
Slide 36
Slide 36 text
Посмотрим?
Slide 37
Slide 37 text
Что дальше?
Slide 38
Slide 38 text
Рефакторинг!
Slide 39
Slide 39 text
Поиск мертвецов
Slide 40
Slide 40 text
Подчистка копипасты
Slide 41
Slide 41 text
Еще раз
Slide 42
Slide 42 text
Тестировать – хорошо и полезно
Slide 43
Slide 43 text
Dependency Injection упрощает создание тестового окружения
Slide 44
Slide 44 text
Тесты позволяют рефакторить безболезненно
Slide 45
Slide 45 text
Проверка покрытия намекает на то, что вы реально тестируете
Slide 46
Slide 46 text
Спасибо.
Slide 47
Slide 47 text
Вопросы? #iosdevcamp