xcode 4.3单元测试

时间:2012-06-08 14:57:44

标签: unit-testing xcode4.3 sentestingkit

我是xcode和objective-c的新手。我还决定在我的项目中添加单元(逻辑)测试。测试工作正常(使用OCUnit和SenTestingKit)。我不明白的是build for testing是如何运作的。让我解释..

我编写了一个检查空数组的简单单元测试 - 使用

STAssertTrue([array count] ==0, @"Should have an empty array, but it is not");

这构建良好,测试通过。

现在,如果我将其从0更改为1,则构建失败。对我来说,为什么构建失败是没有意义的 - 代码没有任何错误。在我看来,构建实际上是运行代码而断言是断言。

如果方法返回一个包含一个元素的数组,如何逐步执行代码来确定方法中的问题?在这个简单的例子中显而易见的是问题,但如果要测试的方法有更深入的问题,则需要逐步完成它来纠正问题。像这样的运行单元测试似乎不太容易使用 - 除非有一些我完全遗漏的东西。

我的问题是:如何逐步完成失败的单元测试?

1 个答案:

答案 0 :(得分:1)

如果您不希望破坏的测试导致构建失败,则需要关闭项目中的构建后测试设置。如果将来您的构建因测试而失败,您可以通过执行它们(Product - > Test)和设置断点来调试测试用例,就像调试任何其他代码一样。对于Xcode来说情况并非总是如此,但正如您所说的那样,它与4.3一样。

您还会问“Build for Testing”是什么意思。这个问题涉及同一理由:Xcode 4 terms "Build for testing / Build for running / build for profiling / build for archiving"