В последнее время я пытался заняться разработкой для iOS, пока смотрел только пару скринкастов (серия Стэнфорд и некоторые другие), и у всех них есть одна общая черта.
Все говорят об инструментах и отладчике, но я на самом деле не видел ни TDD, ни тестирований.
Будучи разработчиком Ruby, TDD в основном автоматический. Я даже не помню, когда в последний раз мне приходилось пользоваться отладчиком.
Но если взглянуть на рабочий процесс iOS, где вам нужно скомпилировать все приложение, а затем загрузить его в симулятор, я думаю, что быстрое TDD будет не таким простым.
В моем текущем рабочем процессе на Ruby я обычно запускаю тесты каждые пару секунд или хотя бы раз в минуту. Но даже в простом проекте Xcode компиляция и запуск тестов занимает не менее 30 секунд ( MacBook Pro с Core 2 Duo ).
Полагаю, я не могу ожидать той же скорости, что и в Ruby, где ничего не компилируется, но похоже, что это сильно нарушает поток TDD, особенно для более крупного проекта.
Можно ли вообще использовать TDD или какую-либо форму тестовой первой разработки на iOS?