我想为我的iphone应用程序设置应用程序单元测试。所以我制作了一个应用程序目标的副本,以及苹果的documentation中描述的单元测试包目标。iPhone单元测试链接问题,无法找到DevToolsBundleInjection.framework
在遵循Apple的指示之后,我无法在单元测试中引用我的类,因此我使用“Bundle Loader”构建设置将应用程序链接到单元测试包,并将主要目标设置为导出符号。这解决了编译时间错误,并且在我改变它之后立即运行并执行了我的测试。但是,一旦我清理和重新建造,我开始收到此错误,当我试图在设备上运行:
Unable to read symbols for "/Developer/Platforms/iPhoneOS.platform/DeviceSupport/3.1 (7C144)/Symbols/Developer/Library/PrivateFrameworks/DevToolsBundleInjection.framework/DevToolsBundleInjection" (file not found).
该文件不存在,这是真的。我发现.framework文件在: /Xcode3.1.4/Library/PrivateFrameworks PrivateFrameworks
并做了一个符号链接。然后运行该应用程序说,它不能连接应用程序的文件:
010-01-25 20:19:22.330 SmokeyTheBear[5808:207] Error loading /private/var/mobile/Applications/26E1F8F4-6444-415B-84CB-BB161DBA29E9/SmokeyTheBear.app/LogicTests.octest/LogicTests: dlopen(/private/var/mobile/Applications/26E1F8F4-6444-415B-84CB-BB161DBA29E9/SmokeyTheBear.app/LogicTests.octest/LogicTests, 262): Symbol not found: _OBJC_CLASS_$_AppDelegate
Referenced from: /private/var/mobile/Applications/26E1F8F4-6444-415B-84CB-BB161DBA29E9/SmokeyTheBear.app/LogicTests.octest/LogicTests
Expected in: /var/mobile/Applications/26E1F8F4-6444-415B-84CB-BB161DBA29E9/SmokeyTheBear.app/UDorse
in /private/var/mobile/Applications/26E1F8F4-6444-415B-84CB-BB161DBA29E9/SmokeyTheBear.app/LogicTests.octest/LogicTests
DevToolsBundleInjection: Error loading bundle '/private/var/mobile/Applications/26E1F8F4-6444-415B-84CB-BB161DBA29E9/SmokeyTheBear.app/LogicTests.octest'
然后,我切换回运行正常目标的应用程序,它跑了我所有的单元测试,并退出!我再次清理并建造,然后正常目标正常运行。单元测试目标仍然没有工作。
请您提供反馈意见吗? – 2010-02-20 10:53:36
@Johannes鲁道夫:我同意。 – Goles 2010-02-22 12:09:30