我正在使用xctest
在命令行上运行iOS模拟器单元测试。首先,我建立目标:
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中的框架(如“安全性”)。但是,一旦我添加了像MobileCoreServices这样的iOS SDK框架,
xctest
就会中断,从而给我:Library not loaded: /System/Library/Frameworks/MobileCoreServices.framework/MobileCoreServices
单元测试在Xcode中运行良好,并且单元测试目标在其Frameworks搜索路径中包括
$(PLATFORM_DIR)/Developer/Library/Frameworks
。有人知道让
xctest
找到iOS框架的正确方法吗? 最佳答案
测试目标需要能够在MyApp的内置产品中寻找框架。您应该将框架搜索路径添加到测试目标:
$(CONFIGURATION_TEMP_DIR)/MyApp.build/DerivedSources
关于ios - XCTest不链接iOS框架,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/32633647/