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

时间:2011-02-20 15:27:46

标签: objective-c unit-testing tdd xcode4

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

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

是否有人知道有任何资源或教程可以使其正常工作?

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

library not found for -ltest1
Command /Developer/Platforms/iPhoneOS.platform/Developer/usr/bin/llvm-gcc-4.2 failed with exit code 1

非常感谢任何帮助。

1 个答案:

答案 0 :(得分:7)

好的,我终于有了这个工作。

诀窍是创建库而不检查XCode 4中的“包含单元测试”选项。然后我自己创建了一个新目标。

(在xcode 4中)

  1. 创建新的Cocoa Touch静态库项目,不要选中“包含单元测试”
  2. 在导航器中选择项目
  3. 进入“构建阶段”标签
  4. 点击“添加目标”并选择“Cocoa Touch Unit Testing Bundle”
  5. 完成向导直到创建目标
  6. 然后进入“产品”菜单并选择“编辑方案......”
  7. 确保选择了您的项目(而不是测试目标),然后选择“测试”
  8. 点击+添加新目标
  9. 选择您的测试项目,然后单击添加
  10. 现在按Cmd + U(这是“Product> Test”菜单项的快捷方式),您会发现默认测试失败。
  11. 我希望这会有所帮助。