问题标签 [ocunit]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
3 回答
1315 浏览

objective-c - 如何在 Xcode 中运行 OCUnit 测试的子集

在签入我的项目之前,我有一套单元测试。但是,通常情况下,只有其中一个人在代码中发现了一些回归。在这些情况下,我只想在调试失败时运行那个特定的单元测试。我还没有在 Xcode 中找到任何方法来做到这一点。是否可以?

0 投票
1 回答
969 浏览

iphone - 测试视图控制器——iPhone

我的问题是 2 倍的。1.我可以使用OCUnit来测试视图控制器吗?如果是这样,我该怎么做?如果没有,我可以使用其他测试套件吗?

0 投票
5 回答
7530 浏览

cocoa - 为什么 gcov 不报告我的单元测试涵盖的任何行?

我在 10.6 上使用 Xcode 3.2,带有 gcov 的出厂版本和默认的 GCC 编译器(均为 4.2.1 版本)。我创建了一个依赖 Cocoa 单元测试包,该包被注入到我的应用程序中,并遵循 Apple 的关于设置 gcov-instrumented 构建配置的文档- 基于未启用任何编译器优化的调试配置。

当我使用这种“Gcov-instrumented”配置构建测试包时,应用程序启动并且测试被注入并运行。覆盖统计文件也在以下位置生成:

build/<AppTarget>.build/Gcov-instrumented/<AppTarget>.build/Objects-normal/x86_64/<object>.gcda

build/<AppTarget>.build/Gcov-instrumented/<AppTarget>.build/Objects-normal/x86_64/<object>.gcno

到现在为止还挺好。我知道测试确实在运行,因为如果我插入失败,那么测试套件会按预期失败。不幸的是,gcov 报告说测试没有覆盖任何对象行!每一行都报告为 0 覆盖率。我在此处和 Apple 邮件列表档案中进行了搜索,但找不到任何有类似问题的人。我希望我错过了一些东西 - 但它是什么?

0 投票
4 回答
1310 浏览

iphone - OCUnit 是否允许在 iPhone 模拟器上运行应用程序测试?

Apple 的“iPhone 开发指南”在第 62 页建议“因为应用程序测试仅在设备上运行,您也可以使用这些测试来执行硬件测试......”。

我也想在模拟器中运行我的 OCUnit 测试用例——但还没有弄清楚如何去做。是否可以?还是我必须改用 Google 的工具包?http://code.google.com/p/google-toolbox-for-mac/

0 投票
1 回答
1138 浏览

iphone - iPhone:应用测试和核心定位

我正在尝试按照此处所述实施应用程序测试。到目前为止,一切都很好,但我无法使用核心位置来测试设备的位置。我已将适当的框架添加到目标,并已启动位置更新,但我不知道如何等待加载位置,测试套件仅在第二个线程完成之前结束。请帮助我找到一种方法来测试这种事情。

0 投票
4 回答
437 浏览

iphone - 你还应该在单元测试中进行内存管理吗?(OCUnit)

我还应该为在单元测试中释放对象而烦恼吗?

我在 Apple 的“iPhoneUnitTests”示例项目中注意到 setup 方法中的对象是 [[object alloc] init] 但从未在单元测试的任何地方发布?

谢谢!

0 投票
1 回答
632 浏览

iphone - 在 Xcode for iPhone 项目中使用 OCUnit?

在配置我的 iPhone 应用程序进行单元测试后,我很晚才注意到文档中的这个警告:

iPhone OS 单元测试支持:iPhone 应用程序不支持单元测试。

由于其他一些关于单元测试的 Xcode 文档已经过时了……现在还是这样吗?

0 投票
2 回答
1744 浏览

iphone - 单元测试和 TDD、OCUnit 与 Google 工具箱

我正在尝试在 OCUnit 和 Google Tool Box 之间进行选择,您是否有任何偏好,会推荐其中一个,为什么?我很想听听您对 2 中任何一个的体验。

我对他们两个的主要问题是管理测试方法中的崩溃(例如:BAD ACCESS)他们都无法告诉我崩溃发生在哪个类!

使用 Google Tool Box,我可以看到正在运行的测试套件,但看不到测试用例(当您的测试套件有 50 个测试用例时,您应该怎么做?)

使用 OCUnit,我至少可以看到哪个测试套件中的哪个测试用例导致了崩溃。

这是我对 GTB 的信息:

我可以看到它是导致崩溃的测试套件“LogicTests”,但仅此而已。

对于 OCunit,这里是相同错误的消息:

至少使用 OCUnit,我可以跟踪正在运行的测试用例并最终对其进行调试(但如果没有任何类和行号信息,这可能需要很长时间......)

你如何处理这些问题?

提前致谢。

PS:这是重现问题的方法,非常简单:

只需创建一个具有在调用时崩溃的方法的类(在您执行 TDD 时会一直发生):

然后创建一个调用此方法的测试用例:

提前致谢,文森特

0 投票
2 回答
2312 浏览

objective-c - OCUnit (SenTestingKit) 错误文件不是必需的架构

我正在尝试构建一个使用 OCUnit 运行测试但在链接时出现以下错误的项目:

我之前能够毫无问题地使用 OCUnit 构建和运行。这个问题本周出现了,但我不知道是什么变化造成的。我尝试使用 iPhone SDK 3.2.1 重新安装 XCode 无济于事。

如果我确实获得了有关 /Library/Frameworks/SenTestingKit.framework/Versions/A/SenTestingKit 的信息,我会得到“种类:Unix 可执行文件(PowerPC)”。这往往表明我为什么会遇到问题,因为我正在为架构 x86_64 构建英特尔平台。但是,我不明白它以前如何工作并停止工作......

谢谢你的帮助。

0 投票
4 回答
2700 浏览

objective-c - OCUnit 中的简化断言

我刚开始使用 OCUnit,发现断言有点麻烦。在 JUnit 中,我可以编写一个测试来比较如下数字。这个测试显然会失败,但这显示了我可以为两个数字编写的漂亮、简单的断言以及我得到的反馈:“预期 <2> 但是 <3>”,代码很少。

替代文字

到目前为止,我在 XCode 中尝试的是:

替代文字

哪个有效,但不如 JUnit 优雅。你知道它是否存在断言宏 alà JUnit for XCode (OCUnit)?另外,是否可以在 XCode 中获得红/绿条?