您测试iPhone / iPad应用程序的方法是什么?

时间:2010-04-19 19:16:47

标签: iphone unit-testing testing ipad

开发iPhone / iPad时

  1. 进行单元/集成/等测试吗?
  2. 您使用什么框架?
  3. 您尝试了哪些其他框架(如果您决定不使用它们,为什么不呢?)

  4. 注意这是基于question asked a few days ago(此后经过大量编辑)。问题产生了一些有趣的回答,可能有助于在一个地方聚合。

5 个答案:

答案 0 :(得分:9)

以下是我目前在发送应用之前的测试方法。

1)使用Xcode集成的Clang分析仪进行构建和分析。

这在许多方面很有用,它会捕获许多小愚蠢的东西以及一些内存泄漏(即使有时其结果包含误报)。

2)彻底检查所有警告。其中一些可能实际上是非常有害的。尽可能删除警告。

3)使用Instruments检查内存泄漏,运行时的内存占用等

4)当我认为需要时,使用Shark识别性能问题。

5)执行(手动)所有预定义的测试系列,以检查UI和底层代码是否按预期工作。在向应用添加新功能时,请务必再次进行回归测试,以确保一切顺利,正常运行。由于设置和运行它们所需的时间难以置信,我很久以前就放弃了单元测试。

6)向alpha测试人员发送应用程序的临时版本,报告正确的错误,然后再将应用程序发送给alpha和beta测试人员并更正报告的错误。

7)最终测试是在iPhone 3GS,iPhone 3G和iPod Touch等不同设备上亲自完成的。

答案 1 :(得分:5)

就我个人而言,我只对单元测试有意义的类和/或方法进行单元测试,值得付出努力。在我看来,这归结为以下类型的代码:

  • 纯计算算法
  • 各种数据解析器(文件,互联网数据等)
  • 具有输入/输出关系的方法
  • 可能还有一两个我忘了。

我很少使用单元测试来测试与GUI相关的代码。

到目前为止,我只使用了iPhone附带的OCUnit / SenTesting框架。

我还发现,在发布过程中制作一份简短的事项清单可以进行大量的测试。通常不是直接测试相关的东西会在产品中产生问题,而是构建/发布过程中的小(遗忘)步骤。

答案 2 :(得分:2)

  1. 没有
  2. N / A
  3. N / A
  4. 老实说,我发现创建单个单元测试所需的工作量是完全痛苦的。即使对于最基本的测试,也需要大量的模拟。同样,在iPhone中分离模型,视图和控制器也很困难。鉴于我的应用程序非常小,不值得花时间。

    如果/当我写更大的内容时,我会再次重新调查单元测试。

    据说,我做了大量的用户/ QA风格测试。看着别人使用应用程序(非常有用!),我使用应用程序等。如果你在单元测试中吝啬,你就不能吝啬!

答案 3 :(得分:0)

我在我的应用上做了一些单元测试。但由于我的计算器比其他更复杂的应用程序更容易进行单元测试。当我发现一个不能正常工作的情况(通常来自手动测试)时,我发现它非常有用,然后我编写了一个测试,以便将来总是会测试(希望模糊不清)的情况。这样我就不会再犯错了。

答案 4 :(得分:0)

唯一的测试是使用应用程序仪器,有时只是。