对Objective-C代码进行单元测试的框架是什么?我想要一个框架,很好地集成与苹果Xcode。
当前回答
Sen:te (Xcode中的测试框架的创建者)解释了如何在iPhone项目中使用OCUnit: simple-iphone-ipad-unit-test。
其他回答
注意,谷歌Toolbox for Mac (GTM)项目只是扩展/增强了苹果的SenTestingKit框架(它本身基于OCUnit)。就像他们在项目网站上说的:
GTM有几个增强 标准的SenTestingKit允许你 做UI单元测试,自动绑定 单元测试、日志跟踪和单元 在iPhone上进行测试 做静态和动态的工具 代码测试。
请注意以下关于用户界面测试的注释:
GTM对用户有广泛的支持 接口单元测试。它支持 同时测试成像和/或 内部状态几乎都有了 标准Cocoa/UIKit UI对象,以及 让你很容易扩展它 支持你自己的UI对象。
关于如何使用它,请参阅他们的“代码验证和单元测试”页面。
我建议你看看Kiwi,一个开源的iOS BDD测试框架: 猕猴桃
查看项目的WIKI,开始或获得Daniel Steinberg的书“Test Driving iOS Development with Kiwi” test-driving-ios-development
我知道这是一个老问题,但是如果您更喜欢bdd风格的测试(rspec、Jasmine等)而不是xunit风格的测试(Test::Unit、JSUnit、JUnit等),那么您可以考虑使用Cedar。既然Objective-C语言支持闭包,那么Cedar就为Objective-C带来了bdd风格的测试。
我们很高兴在Pivotal Labs的iOS项目中使用Cedar,我们正在积极改进它。任何反馈或建议都欢迎访问cedar-discuss@googlegroups.com
我希望你能使用“SenTestKit”,从中你可以测试每一种方法。
看看Gabriel Handford的GHUnit:
GHUnit的目标是: 在XCode中运行单元测试,允许 你要充分利用XCode 调试器。一个简单的GUI来帮助你 想象你的考试。显示堆栈 痕迹。作为框架可安装 (对于Cocoa应用程序)使用简单的(或 不是)目标设置;或易于包装 加入你的iPhone项目。”
推荐文章
- 在成功提交我的应用程序后,“太多符号文件”
- 首先添加一个UIView,甚至是导航栏
- 复制并重命名Xcode项目和相关文件夹
- 我如何改变UIButton标题颜色?
- 如何从UIImage (Cocoa Touch)或CGImage (Core Graphics)获取像素数据?
- Mockito的argumentCaptor的例子
- iOS -构建失败,CocoaPods无法找到头文件
- Xcode 4挂在“附加到(应用程序名称)”
- 单元测试:日期时间。现在
- 为什么单元测试中的代码不能找到包资源?
- 从导入的模块中模拟函数
- 以编程方式创建segue
- 在单元测试中设置HttpContext.Current.Session
- 在Objective-C中@synchronized如何锁定/解锁?
- Xcode 10的对象库去哪了?