没有findXcode – SenTestingKit

当我升级我的xcode版本时,popup一个问题。 我使用unit testing,我现在当我尝试导入SenTestingKit( #import <SenTestingKit/SenTestingKit.h> ),我得到这个错误: SenTestingKit/SenTestingKit.h: No such file or directory

我看过我的构build设置,我有以下configuration选项:

 == Linking == Other Linker Flags: -framework Foundation -framework SenTestingKit -framework UIKit Prebinding: No == Search Paths == Debug Configutation: "/iphonesimulator4.0/Developer/Library/Frameworks" "/Xcode4/Library/Frameworks" 

我检查了/Xcode4/Library/Frameworks ,并且SenTestingKit.framework/目录那里。

那么我错过了什么?

在XCode中创build新的testing用例时,我遇到了同样的问题。 但是,这是由于我在创buildtesting用例时select了错误的目标而导致的愚蠢。

使用“File New …”,testing用例被包含在目标应用程序设置中,而不是testing用例的目标。 检查“构build阶段”选项卡并查看“编译源”披露揭示了我的特殊问题。

升级到xcode 4.3后,我遇到了这个问题。 在我遇到这个post之前似乎没有任何工作。 我已经有了相同的searchpath,但改变顺序解决了这个问题。

所以从这篇文章中,您需要在您的框架searchpath中按以下顺序input以下两个值。

 $(SDKROOT)/Developer/Library/Frameworks $(DEVELOPER_LIBRARY_DIR)/Frameworks 

我有这个问题,因为我的Xcode安装有一个空间: /Xcode 4.0.2

我通过在框架searchpath中添加"${DEVELOPER_LIBRARY_DIR}/Frameworks" (带引号)来解决这个问题。

对于我的框架searchpath,我已经明确地添加了/$(DEVELOPER_DIR)/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS4.1.sdk/Developer/Library/Frameworks 。 编译正确的模拟器和设备。

我确信有环境variables,所以它可以跨SDK版本工作,所以我会更新答案,如果我find他们。

截图

为了彻底清除这个问题,Xcode SDK中有三个SenTestingKit框架,一个是OS X,一个是iOS,一个是模拟器。

如果你在他们身上运行“lipo -info”,你会看到的

胖文件中的体系结构:/Developer/Library/Frameworks/SenTestingKit.framework/Versions/A/SenTestingKit是:x86_64 i386

胖文件中的体系结构:/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS5.1.sdk/Developer/Library/Frameworks/SenTestingKit.framework/SenTestingKit is architecture:armv7

非胖文件:/Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator5.1.sdk/Developer/Library/Frameworks/SenTestingKit.framework/SenTestingKit is architecture:i386

您可能想要检查Xcode是否正在检查框架searchpath: 框架搜索路径