Unit testing 防止在编译失败时运行OCUnit测试

Unit testing 防止在编译失败时运行OCUnit测试,unit-testing,xcode,macos,ocunit,Unit Testing,Xcode,Macos,Ocunit,我使用的是Xcode 3.2.2和内置的OCUnit测试工具。我遇到的一个问题是,每次构建时,我的单元测试都会运行,即使构建失败。假设我在一个测试中出现语法错误。测试未能编译,最后一次成功编译单元测试将运行。如果其中一个依赖目标未能构建,则会发生同样的情况—测试仍在运行。这显然不是我想要的 如果构建失败,如何防止测试运行?如果这是不可能的,那么我宁愿让测试永远不会自动运行,这是可能的吗?很抱歉,如果这是显而易见的,我是一个Xcode noob。我应该使用更好的单元测试框架吗?答案是转储OCUni

我使用的是Xcode 3.2.2和内置的OCUnit测试工具。我遇到的一个问题是,每次构建时,我的单元测试都会运行,即使构建失败。假设我在一个测试中出现语法错误。测试未能编译,最后一次成功编译单元测试将运行。如果其中一个依赖目标未能构建,则会发生同样的情况—测试仍在运行。这显然不是我想要的


如果构建失败,如何防止测试运行?如果这是不可能的,那么我宁愿让测试永远不会自动运行,这是可能的吗?很抱歉,如果这是显而易见的,我是一个Xcode noob。我应该使用更好的单元测试框架吗?

答案是转储OCUnit并使用GHUnit,这大约是它的一百万倍:

您需要做的就是使运行单元测试的脚本依赖于已构建的测试包。为此:

在目标组中,展开单元测试包并获取有关运行脚本的信息

在“常规”选项卡上,单击输入文件的+按钮,然后输入:

$(BUILT_PRODUCTS_DIR)/$(EXECUTABLE_PATH)

+我相信你的话。我对GHUnit非常满意,所以我不会再切换回去验证它是否有效。