对Objective-C代码进行单元测试的框架是什么?我想要一个框架,很好地集成与苹果Xcode。


当前回答

我得出的结论是GHUnit是Objective-C最先进的测试框架。我已经在我的博客上做了一个测试框架的综述。它在部署(iphone、模拟器或mac os本机)和断言功能方面是最灵活的。因为它是基于GTM的,所以它继承了GTM相对于SenTestingKit的所有优势,但也添加了更多。另一个好处是,它得到了非常积极的维护。

我已经进行了努力,将OCMock集成到GHUnit中,它工作得很好!你可以在github上获得代码。

其他回答

我开始使用谷歌工具箱测试iPhone,它的工作对我来说很棒。

google-toolbox-for-mac

这里有很多

Objective-C中的List_of_unit_testing_frameworks

Xcode包含XCTest,它类似于OCUnit,一个Objective-C单元测试框架,并且完全支持在项目构建过程中运行基于XCTest的单元测试。Xcode的单元测试支持在Xcode概述:使用单元测试中有描述。

回到Xcode 2天,我写了一系列关于如何用Xcode单元测试执行一些常见任务的博客文章:

单元测试Cocoa框架 调试Cocoa框架单元测试 单元测试Cocoa应用程序 调试Cocoa应用程序单元测试

尽管使用OCUnit而不是XCTest,但概念在很大程度上是相同的。

最后,我还写了几篇关于如何为Cocoa用户界面编写测试的文章;Cocoa的结构方式使得它相对简单,因为在大多数情况下你不需要旋转事件循环或类似的东西。

信任,但要验证。 单元测试Cocoa用户界面:目标-操作 单元测试Cocoa用户界面:Cocoa Bindings

这使得不仅可以对模型级代码进行测试驱动开发,还可以对控制器级甚至视图级代码进行测试驱动开发。

我使用SimpleUnitTest工作与iPhone和iPad lib。

http://cbess.blogspot.com/2010/05/simple-iphone-ipad-unit-test.html

它带有一个单元测试Xcode模板,可以轻松添加单元测试类。包装GTM。

您可以将其放入活动项目中,并在3分钟(或更短时间)内开始添加单元测试。

Sen:te (Xcode中的测试框架的创建者)解释了如何在iPhone项目中使用OCUnit: simple-iphone-ipad-unit-test。