используйте что-то вроде:
double step = 1d / 5;
(1d - это бросок, чтобы удвоить)
XCode включает XCTest, который подобен OCUnit, платформа поблочного тестирования Objective C, и имеет полную поддержку выполнения находящихся в XCTest модульных тестов как часть процесса сборки Вашего проекта. Поддержка поблочного тестирования XCode описана в Обзор XCode: Используя Модульные тесты .
Назад в XCode 2 дня, я записал ряд сообщений блога о том, как выполнить некоторые общие задачи с поблочным тестированием XCode:
Несмотря на использование OCUnit, а не XCTest, понятия являются в основном тем же.
Наконец, я также записал несколько сообщений о том, как тестам записи на пользовательские интерфейсы Какао; путем Какао структурировано, делает его относительно простым, потому что Вы не должны вращать цикл событий или что-либо как этот в большинстве случаев.
Это позволяет сделать разработку через тестирование для не только Ваш код образцового уровня, но также и Ваш уровень контроллера и даже код уровня представления.
Sen:te (создатель среды тестирования, включенной с XCode), объясняет, как использовать OCUnit с проектом iPhone: simple-iphone-ipad-unit-test.
Я также рекомендовал бы использовать инструменты покрытия для наблюдения, какая часть кода покрыты модульными тестами и которые не являются. Основная строка и покрытие кода ответвления могут быть сгенерированы с инструмент GCOV . Если Вы хотите генерировать хорошее покрытие HTML, сообщает, что существует LCOV и ZCOV, которые делают просто это.
Обратите внимание, что Google Toolbox for Mac (GTM), проект просто расширяется/увеличивает платформу SenTestingKit Apple (который является, саму на основе OCUnit). Поскольку они говорят относительно стройплощадки:
GTM имеет несколько улучшений к стандартному SenTestingKit, разрешающему Вам сделать поблочное тестирование UI, автоматизировал обязательное поблочное тестирование, отслеживание журнала и поблочное тестирование на iPhone, а также инструментах для того, чтобы сделать статическое испытание и динамическое тестирование Вашего кода.
Примечание следующий комментарий о тестировании пользовательского интерфейса:
GTM имеет обширную поддержку тестов блока интерфейса пользователя. Это поддерживает тестирование и обработка изображений и внутреннее состояние почти всех стандартных объектов пользовательского интерфейса Cocoa/UIKit, и помогает Вам расширить эту поддержку Вашим собственным объектам пользовательского интерфейса.
Видят их" Проверочное испытание Кода и Поблочное тестирование " страница для получения инструкций относительно того, как использовать его.
Выезд OCUnit. Сеть разработчиков Apple имеет большое введение .
Я начал использовать буровую установку тестирования панели инструментов Google для iPhone и его разработку большого для меня.
Выезд GHUnit Gabriel Handford:
"Цели GHUnit:
модульные тесты Выполнений в XCode, позволяя Вам полностью использовать Отладчик XCode. Простой GUI, чтобы помочь Вам визуализировать свои тесты. Покажите отслеживания стека. Будьте устанавливаемыми, поскольку платформа (для приложений Какао) с простым (или не) предназначается для установки; или легкий к пакету в Ваш проект iPhone".
Я рекомендую gh-единицу, она имеет хороший GUI для результатов испытаний.
Я пришел к выводу, что GHUnit - это наиболее продвинутая среда тестирования для Objective-C. Я сделал обзор фреймворков для тестирования в своем блоге. Он является наиболее гибким с точки зрения развертывания (iphone, симулятор или Mac OS) и возможностей утверждения. Поскольку он основан на GTM, он наследует все преимущества GTM по сравнению с SenTestingKit, но также добавляет намного больше. Еще одним преимуществом является то, что он очень активно поддерживается.
Я приложил усилия для интеграции OCMock в GHUnit, он отлично работает! Вы можете получить код на github .
Мэтт Галлахер из "Какао с любовью" имеет очень хорошую статью по блочному тестированию.
Я использую SimpleUnitTest, работает с библиотеками iPhone и iPad.
http://cbess.blogspot.com/2010/05/simple-iphone-ipad-unit-test.html
Он поставляется с шаблоном Xcode модульного теста для простого добавления класса модульного теста. Обертывает GTM.
Вы можете буквально перетащить его в активный проект и начать добавлять модульные тесты в течение 3 минут (или меньше).
Поддержка Unit Testing, встроенная в xcode (за простоту настройки) в сочетании с ocrunner (за некоторые автотесты/Growl) в настоящее время является моей любимой настройкой Obj-C Unit Testing.