XCTest не связывает платформы iOS
Я запускаю тестовые модули симулятора iOS в командной строке, используя xctest
, Сначала я строю цель:
xcodebuild -project "build/MyApp.xcodeproj" -target "MyApp Unit Tests" -configuration "Debug" -sdk "iphonesimulator" build
А потом беги xctest
на тестовом пакете:
xcrun xctest "build/build/Debug-iphonesimulator/MyApp Unit Tests.xctest"
Это прекрасно работает и может связывать фреймворки, которые находятся в /System/Library/Frameworks, например Security. Но xctest
ломается, как только я добавляю iOS SDK Framework, такой как MobileCoreServices, давая мне:
Library not loaded: /System/Library/Frameworks/MobileCoreServices.framework/MobileCoreServices
Модульные тесты работают нормально в XCode, и цель модульного теста включает в себя $(PLATFORM_DIR)/Developer/Library/Frameworks
в своих путях поиска фреймворков.
Кто-нибудь знает правильный способ сделать xctest
найти рамки для iOS?
1 ответ
Цель тестирования должна уметь искать фреймворки во встроенном продукте MyApp. Вы должны добавить путь поиска фреймворка к цели теста:
$(CONFIGURATION_TEMP_DIR)/MyApp.build/DerivedSources