Автоматизированное
тестирование iOS
приложений
(TDD)
Пешков Анатолий
"Buy Me a Pie"
TDD
Разработка через тестирование (англ. test-driven
development, TDD)
Автоматизированное
тестирование
● Модульное тестирование (Unit Testing)
○ OCUnit (встроен в Xcode)
○ GHUnit
○ Cedar
○ Kiwi
○ ...
● Тестирование интерфейса
○ Calabash-iOS
○ Frank
Модульное тестирование (Unit
testing)
Цель модульного тестирования —
изолировать отдельные части программы и показать,
что по отдельности эти части работоспособны.
Плюшки:
1. Поощрение изменений
2. Упрощение интеграции
3. Документирование кода
4. Отделение интерфейса от реализации
Заводим тесты в Xcode
Заводим тесты в Xcode
Запуск тестов в Xcode
OCUnit vs Kiwi
Реальный пример
Нюанс
Виды unit-тестов в Xcode:
● Application Unit Tests
Тесты знают о приложении, запускаются после приложения в его
окружении
● Logic Unit Tests
Тесты знают только о тех файлах (классах), которые мы сами им
укажем. Запускаются вне окружения приложения - изолированно
Заводим Logic Tests
Заводим Logic Tests
Тестирование интерфейса
Calabash-iOS и Frank
Позволят делать такое:
When I fill in "Title" with "FuuBar"
And I touch "Save" button
Then I should see alert view titled "Saved
successully"
The End
Зеленых вам тестов

Ttd in xcode