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


当前回答

注意,谷歌Toolbox for Mac (GTM)项目只是扩展/增强了苹果的SenTestingKit框架(它本身基于OCUnit)。就像他们在项目网站上说的:

GTM有几个增强 标准的SenTestingKit允许你 做UI单元测试,自动绑定 单元测试、日志跟踪和单元 在iPhone上进行测试 做静态和动态的工具 代码测试。

请注意以下关于用户界面测试的注释:

GTM对用户有广泛的支持 接口单元测试。它支持 同时测试成像和/或 内部状态几乎都有了 标准Cocoa/UIKit UI对象,以及 让你很容易扩展它 支持你自己的UI对象。

关于如何使用它,请参阅他们的“代码验证和单元测试”页面。

其他回答

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

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

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

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

Specta是一个现代的TDD(测试驱动开发)/BDD(行为驱动开发)框架,它运行在XCTest之上。它支持iOS和Mac OS X项目的单元测试。

Cocoa with Love的Matt Gallagher有一篇关于单元测试的好文章。

我希望你能使用“SenTestKit”,从中你可以测试每一种方法。

我知道这是一个老问题,但是如果您更喜欢bdd风格的测试(rspec、Jasmine等)而不是xunit风格的测试(Test::Unit、JSUnit、JUnit等),那么您可以考虑使用Cedar。既然Objective-C语言支持闭包,那么Cedar就为Objective-C带来了bdd风格的测试。

我们很高兴在Pivotal Labs的iOS项目中使用Cedar,我们正在积极改进它。任何反馈或建议都欢迎访问cedar-discuss@googlegroups.com