2010-12-04 42 views
0

我正在按照this guide设置iOS应用(使用4.2 SDK)的单元测试目标。该指南称,RunUnitTests应通过shell脚本在我的目标的最后阶段得到执行:单元测试目标中的xcode RunUnitTests脚本?

设置为测试主机的值告诉RunUnitTests脚本(在最后的构建阶段执行)启动指定的应用程序和注入你的测试包

实际上,我创建的目标确实有一个“运行脚本”步骤,但该步骤是空的。我的测试情况下建立正确,如“编译源代码”也包含我的测试类,但它似乎并没有越来越跑,因为我有一个测试方法,我认为应该失败:

- (void)testClick { 
    STAssertTrue(NO, @"sample test"); 
} 

,我认为应该导致xcode产生一些噪音,但是当我构建我的目标时,我所得到的只是“构建成功”。我在目标设置中缺少什么?我的单元测试目标的“Link Binary With Libraries”和“Run Script”步骤是否应该是空的?目标肯定是编译我的测试用例,但我不认为它知道链接或运行脚本。

在我的目标设置中,我已经将“Bundle Loader”和“Test Host”属性设置为我认为正确的属性,因为编译器设置不正确时,抱怨说。

+0

您使用的是哪种版本的Xcode? – 2010-12-06 11:52:30

回答

0

保罗,尝试包括这个代码在你空“运行脚本”的剧本打造阶段:

# Run the unit tests in this test bundle. 
"${SYSTEM_DEVELOPER_DIR}/Tools/RunUnitTests" 

,并确保外壳线读取/bin/sh。我可能有这个错误,因为它在本指南中没有提及,但这是我一直在运行我的单元测试的过程,并且它工作得很好。