我正在尝试使用XCode 3.2.3为iPhone应用程序设置单元测试.
尽我所能,但我在尝试构建时收到此错误消息:
“((yourApplicationDelegate)!= nil)”应该是真的. UIApplication未能找到AppDelegate
(这是USE APPLICATION UNIT TEST的默认琐碎测试是真的)
我正在构建我的应用测试目标,如文档中所述,并得到此错误.
我是否需要确保我的所有非测试用例源都在我的测试包中?
困惑
–
我将源文件包含到我的项目中并且编译得很好,但它仍然遇到相同的单元测试错误:
“((yourApplicationDelegate) != nil)” should be true. UIApplication Failed to find the AppDelegate
-(void) testAppDelegate { id yourApplicationDelegate = [[UIApplication sharedApplication] delegate]; STAssertNotNil(yourApplicationDelegate,@"UIApplication Failed to find the AppDelegate"); }
解决方法
确保指定了单元测试包的BUNDLE_LOADER和TEST_HOST构建设置.
BUNDLE_LOADER = $(BUILT_PRODUCTS_DIR)/YourApp.app/YourApp TEST_HOST = $(BUNDLE_LOADER)
此外,在Xcode4中,不需要Apple指南中描述的许多步骤(例如,复制应用程序目标).我建议创建新项目,包括单元测试和环顾四周.