XCode4单元测试和UIAutomation

Sam*_*Sam 8 iphone unit-testing xcode4 ios-ui-automation

我正在寻找在我的公司进行测试,但我对最好的开始方式有点模糊.

我知道我可以使用框架进行单元测试,例如OCUnit,GHUnit或SenTestingKit ......到目前为止一切都很好.我可以使用Mock对象制作一个逻辑测试我的项目的目标.

我也知道使用UIAutomation和javascript来驱动和测试GUI.

所以,现在如果我实现一个相当复杂的GUI功能,我想对我的代码进行逻辑测试,并使用UIAutomation测试GUI.我如何结合这两种方法,或者他们分开处理,在这种情况下,我会承担,我需要写2组测试中2种不同的语言进行全面测试一个功能?

从侧面说明,如果有人可以提供良好的链接,以便在已经成熟且不那么模块化的代码库上开始测试的建议,那将非常感激.

谢谢!

Ren*_*lin 4

UIAutomation 基于 JavaScript。测试用例是 JavaScript 文件的集合,稍后由 Instruments 执行。

是的,你必须单独这样做:

  1. 这是一种完全不同的语言(JS)
  2. 它不是在 Xcode-Build 上执行,而是由 Instruments 执行
  3. GUI 测试的测试范围与单元或逻辑测试不同。即使与逻辑测试有一些相似之处。它还会测试 GUI“行为”是否正确。

这个视频可能对你有帮助。花一个小时,之后您应该能够自己做出决定(UIAutomation 会话)。

http://developer.apple.com/videos/wwdc/2010/

顺便说一句:目前还没有令人满意的方法来自动化 UIAutomation 测试(对于逻辑和单元测试,有一些)。例如,将它们与持续代码集成结合起来。有人对此进行了讨论,但到目前为止我还没有看到解决方案。总而言之,您可以尝试一下,但对于严格的测试,UIAutomation 仍然不适用:

  1. 没有测试自动化
  2. 没有分离测试用例。如果您的编排中的一个案例失败了,那么接下来的所有测试可能都是无用的。