Какие рамки существуют для модульного тестирования кода Objective-C? Я хотел бы рамки, которая хорошо интегрируется с Apple Xcode.
330
Какие рамки существуют для модульного тестирования кода Objective-C? Я хотел бы рамки, которая хорошо интегрируется с Apple Xcode.
Ответы:
Xcode включает в себя XCTest, который аналогичен OCUnit , инфраструктуре модульного тестирования Objective-C, и полностью поддерживает запуск модульных тестов на основе XCTest в рамках процесса сборки вашего проекта. Поддержка модульного тестирования XCode описана в Обзоре XCode: Использование модульных тестов .
В Xcode 2 дня назад я написал серию постов в блоге о том, как выполнять некоторые общие задачи с модульным тестированием Xcode:
Несмотря на использование OCUnit, а не XCTest, концепции в основном одинаковы.
Наконец, я также написал несколько постов о том, как писать тесты для пользовательских интерфейсов Какао; структура Какао делает его относительно простым, поскольку в большинстве случаев вам не нужно крутить цикл событий или что-то подобное.
Это позволяет выполнять разработку через тестирование не только для кода на уровне модели, но и для кода на уровне контроллера и даже на уровне представления.
источник
Проверьте GHUnit Габриэлем Хэндфордом:
источник
Я начал использовать тестовый набор инструментов Google для iPhone, и он отлично работает для меня.
Google-инструментов-в-макинтош
источник
Проверьте OCUnit . Сеть разработчиков Apple имеет отличное представление .
источник
Обратите внимание, что проект Google Toolbox for Mac (GTM) просто расширяет / дополняет инфраструктуру Apple SenTestingKit (которая сама основана на OCUnit). Как говорится на сайте проекта:
Обратите внимание на следующий комментарий о тестировании пользовательского интерфейса:
См. Их страницу « Проверка кода и модульное тестирование » для получения инструкций по его использованию.
источник
Я пришел к выводу, что GHUnit является самой продвинутой средой тестирования Objective-C. Я сделал сводку тестирующих фреймворков в своем блоге. Он является наиболее гибким с точки зрения развертывания (iphone, simulator или mac os native) и возможностей утверждения. Поскольку он основан на GTM, он наследует все преимущества GTM по сравнению с SenTestingKit, но также добавляет гораздо больше. Еще один бонус заключается в том, что он поддерживается очень активно.
Я приложил усилия для интеграции OCMock в GHUnit, он прекрасно работает! Вы можете получить код на GitHub .
источник
Я понимаю, что это старый вопрос, но если вы предпочитаете тестирование в стиле BDD (rspec, Jasmine и т. Д.), А не тестирование в стиле xUnit (Test :: Unit, JSUnit, JUnit и т. Д.), То вы можете рассмотреть возможность проверки Cedar. , Cedar переносит тестирование в стиле BDD в Objective-C, теперь, когда язык поддерживает замыкания.
Мы с удовольствием используем Cedar для наших iOS-проектов в Pivotal Labs и активно работаем над их улучшением. Любые отзывы или предложения приветствуются на cedar-discuss@googlegroups.com
источник
Я также рекомендовал бы использовать инструменты покрытия, чтобы увидеть, какая часть кода покрыта модульными тестами, а какая нет. Базовое покрытие кода линии и ветви может быть сгенерировано с помощью инструмента GCOV . Если вы хотите создавать хорошие отчеты о покрытии HTML, есть LCOV и ZCOV, которые делают именно это.
источник
Я рекомендую gh-unit, он имеет приятный графический интерфейс для результатов тестирования.
http://github.com/gabriel/gh-unit/tree/master
источник
Поддержка модульного тестирования в комплекте в Xcode (для его установки простой) в сочетании с ocrunner (для некоторого автотеста / Growl благость) в настоящее время моя любимая установка Obj-C модульное тестирование.
источник
вот их много
List_of_unit_testing_frameworks в Objective-C
источник
Sen: te (создатель инфраструктуры тестирования, включенной в Xcode) объясняет, как использовать OCUnit с проектом iPhone: simple-iphone-ipad-unit-test .
источник
Мэтт Галлахер из «Какао с любовью» написал очень хорошую статью о юнит-тестировании.
источник
Я бы посоветовал взглянуть на Kiwi, среду тестирования BDD с открытым исходным кодом для iOS: Kiwi
Проверьте WIKI проекта, чтобы начать или получить книгу Даниэля Стейнберга "Test Driving iOS Development с Kiwi" test- Driving-IOS-Development
источник
Я использую SimpleUnitTest, работает с библиотеками iPhone и iPad.
http://cbess.blogspot.com/2010/05/simple-iphone-ipad-unit-test.html
Он поставляется с шаблоном модульного теста Xcode, чтобы легко добавить класс модульного теста. Обертывания GTM.
Вы можете буквально поместить его в активный проект и начать добавлять модульные тесты в течение 3 минут (или меньше).
источник
Specta - это современная инфраструктура TDD (разработка через тестирование) / BDD (разработка через поведение), которая работает поверх XCTest. Он поддерживает модульное тестирование для проектов iOS и Mac OS X.
источник
Я надеюсь, что вы можете использовать «SenTestKit», из которого вы можете проверить каждый метод.
источник