Я пытаюсь настроить кедр и с трудом заставить его работать. Я пытаюсь следовать инструкциям на github.Как настроить кедр для тестирования bdd приложений ios?
Я использую xcode 4.2.
Первый шаг я не уверен, что это:
«Создание Cocoa Touch„Application“.. Цель для ваших тестов в проекте Название этой целевой UISpecs, или что-то подобное»
a) Я не уверен, могу ли я использовать ARC для моего основного приложения при тестировании с кедром. b) Я уверен, что не могу использовать ARC для создания кедра, и я не думаю, что хочу. c) Я не уверен, что смогу использовать ARC для проекта тестов, в котором будут размещаться мои спецификации. d) Я не уверен, какой шаблон приложения я должен использовать для создания приложения для размещения спецификаций.
Я создал новое основное приложение, использующее ARC и шаблон приложения для одного окна. Я создал новое приложение для размещения своих спецификаций без ARC, используя пустой шаблон приложения.
Когда я открываю файл plist.info для тестового приложения, в котором хранятся мои спецификации, я не вижу опции для «основного имени файла основного файла». Поэтому я игнорирую этот шаг.
Теперь я перехожу к шагу:
«Добавить статическую структуру Кедр-IOS для вашего проекта, и связать свою цель UISpecs с ним.»
Так что я пошел к цели построения функции приложения и добавил ~/Library/Developer/Xcode/DerivedData/Кедр-borwneaogydgaodbtmfyaccykqxn/Build/Products/Debug-iphoneos/libCedar-StaticLib.a файл в проект под " link binaries with libraries "на вкладке« фазы сборки ».
Затем я добавил -ObjC, -lstdC++ и -all_load в настройку компоновки других компоновщиков компоновки для цели UISpec.
Далее, по заявке, что дома спецификации, я создал новый файл с именем TestSpec.m и добавил этот код к нему, в попытке получить неудовлетворительные спецификации:
#import <Cedar/SpecHelper.h>
SPEC_BEGIN(FooSpec)
describe(@"Foo", ^{
it(@"should do something", ^{
expect(0).to(equal(1));
});
});
SPEC_END
Когда я попытался запустить проект specs в симуляторе, я получил некоторые ошибки в отношении alloc и autorelease, которые не поддерживаются при использовании ARC. Я полагаю, это означает, что мое основное приложение не может использовать ARC, в то время как мое приложение спецификации не работает. Я удалил приложение спецификации и повторил попытку, на этот раз используя ARC.
Я удалил пул авторефератов и выпустил код из кода main.m, чтобы соответствовать ARC.
я теперь получить две ошибки сборки:
1) в main.m: файл: // локальный/Users/nelsond/рабочее пространство/BIM360UIArchitecture/BIM360UIPrototype/BIM360Issues-КСН/BIM360Issues-IOS-функции-ARC/main.m: ошибка: проблема с лексикой или препроцессором: файл Cedar-iOS/Cedar-iOS.h не найден 2) в TestSpec.m: файл: // localhost/Users/nelsond/workspace/BIM360UIArchitecture/BIM360UIPrototype/BIM360Issues -IOS/BIM360Issues-IOS-Specs-ARC/TestSpec.m: ошибка: проблема с лексикой или препроцессором: файл «Cedar/SpecHelper.h» не найден
Я довольно озадачен тем, что отлаживать дальше.
Что такое «кедр»? Есть только 40 сообщений с меткой «кедр», и это в основном о облачной платформе Heroku. Ваш пост не о Героку. –
«Cedar - это базовая платформа тестирования Objective-C в стиле BDD». Источник: https://github.com/pivotal/cedar –