Есть ли решение BDD, которое в настоящее время хорошо работает с iOS4 и Xcode4?

Итак, я довольно сильно искал твердую альтернативу BDD для iOS4 и Xcode4, но все, похоже, либо давно заброшено, либо работает довольно неплохо, но довольно беспорядочно. Лучшее решение, которое я нашел, называется Cedar (основная статья со ссылкой на недавно обновленный трекер проекта), хотя у него есть некоторые проблемы с Xcode4 с участием беспорядочного обходного пути, как отмечено здесь. Кто-нибудь знает о лучшем решении? Спасибо!

EDIT: я решил использовать OCUnit и переманить синтаксис BDD в имена тестов. Это не мое идеальное решение, тем более что все имена тестов должны иметь префикс с надписью "test" (ERRGGHH!!!), но я просто не мог заставить Сидар работать на всю жизнь. OCHamcrest (популярная библиотека соответствия) делает этот MUCH более терпимым, но что-то, что позволяет тестировать пользовательский интерфейс, который не компилирует ничего прямо в ваш код, находится в Objective-C и может использоваться в Xcode, все равно будет абсолютно захватывающим.

Ответ 1

Я пробовал Кедр. Я предпочитаю Kiwi. Это потрясающе! Он хорошо работает с iOS4 и Xcode4, его легко настроить, документация хорошая, и у него есть свои собственные методы для матчи, ожидания, издевки, заглушки и т.д., Такие как RSpec. Итак, все, что вам нужно. Вам не нужны OCHamcrest или OCMock.

Вот сумасшедший пример, который я собрал: https://gist.github.com/997581

Также см. Тесты/характеристики iOS TDD/BDD и тестирование интеграции и принятия.

Ответ 2

Попробуйте калабаш, отлично работает и очень легко начать. Вы можете увидеть пример того, как использовать его шаг за шагом в BDD Из идеи в приложение.