Objective c 测试驱动开发(TDD):在Xcode 4中编写单元测试

Objective c 测试驱动开发(TDD):在Xcode 4中编写单元测试,objective-c,unit-testing,tdd,xcode4,Objective C,Unit Testing,Tdd,Xcode4,我热衷于编写一个带有测试的库项目,即使我随后将代码包含在其他项目中(而不是链接到库),以便包含在ios项目中 检查“包含单元测试”似乎不足以让xcode 4正确地初始化带有测试的项目,在查看了Apple文档之后,我找不到任何相关的内容 有没有人知道有什么资源或教程可以让这个工作 即使使用默认的Cocoa Touch静态库项目,在从“产品”菜单中选择“测试”时,也会失败(链接时)并出现此错误(该项目称为test1): 任何帮助都将不胜感激。好的,我终于成功了 诀窍是在不选中XCode 4中的“In

我热衷于编写一个带有测试的库项目,即使我随后将代码包含在其他项目中(而不是链接到库),以便包含在ios项目中

检查“包含单元测试”似乎不足以让xcode 4正确地初始化带有测试的项目,在查看了Apple文档之后,我找不到任何相关的内容

有没有人知道有什么资源或教程可以让这个工作

即使使用默认的Cocoa Touch静态库项目,在从“产品”菜单中选择“测试”时,也会失败(链接时)并出现此错误(该项目称为
test1
):


任何帮助都将不胜感激。

好的,我终于成功了

诀窍是在不选中XCode 4中的“Include unit tests”选项的情况下创建库。然后我自己创建了一个新的目标

(在xcode 4中)

  • 创建一个新的Cocoa Touch静态库项目,不要选中“包含单元测试”
  • 在导航器中选择项目
  • 进入“构建阶段”选项卡
  • 单击“添加目标”并选择“Cocoa Touch单元测试包”
  • 执行向导,直到创建目标
  • 然后进入“产品”菜单并选择“编辑方案…”
  • 确保选择了您的项目(而不是测试目标),然后选择“测试”
  • 单击+添加新目标
  • 选择您的测试项目并单击添加
  • 现在按Cmd+U(这是“产品>测试”菜单项的快捷方式),您会注意到默认测试失败

  • 我希望这能有所帮助。

    我在新项目中使用了Xcode 4 build 4A251a(GM Seed)下的“包含单元测试”。但是它真的有效吗?为了查看失败的测试,我必须在每次测试运行后手动打开控制台并扫描输出?!按照我的解决方法,失败的测试在xcode中显示为错误。因此,您可以在“问题”选项卡中看到它们,然后跳转到它们等等。这在Xcode 4的最终版本中为我修复了。(还有第二个GM种子IIRC…)我在XCode 4.0.2中继续遇到这个问题,但上面的答案对我来说很有用。谢谢我同意。。这在最新版本的XCode中是不需要的
    library not found for -ltest1
    Command /Developer/Platforms/iPhoneOS.platform/Developer/usr/bin/llvm-gcc-4.2 failed with exit code 1