0

在研究 iPhone 项目的单元测试时,我发现在单元测试中很难确定单元的规模,所以如果我有 A、B 和 C 三种方法,我可以分别测试它们,但有时你需要在 B 之前调用 A 以使 B 有意义,例如,如果我有 addImageWithName: 和 removeImageWithName:,那么我需要先添加一个图像,以测试 removeImageWithName: 是否真的有效。

所以这是黑盒单一方法测试或功能测试之间的决定(功能意味着应用程序的功能可能涉及多个方法),如果时间紧迫,我不能同时使用它们,那么优点是什么这两种方法的优缺点?

我能想到的:

=== 单一方法测试 === 优点: - 易于编写测试用例,因为您只需要处理单个方法的输入/输出缺点: - 方法需要高度解耦,因此一种方法不依赖另一种方法 - 有时不可能,例如 undo 方法必须依赖 'do' 方法。

=== 功能测试 === 优点: - 比方法测试更高的级别,因为它针对的是应用程序的功能

缺点: - 不容易编写测试用例,如果功能很复杂 - 可能无法涵盖特定功能中涉及的每个单独方法的所有案例

那么正确的决定应该是什么?

谢谢 !

4

1 回答 1

0

单一方法测试它是在 xcode 中编写单元测试的最佳方式。无论如何,如果您的函数依赖于另一个函数来完成,您可以使用异步单元测试,使用 GHUnit 测试框架来测试异步方法。
顺便说一句:你正在使用什么,OCUnit 或 GHUnit 进行测试?
希望这有帮助

于 2012-06-28T07:58:18.927 回答