iPhone OS测试最佳实践

时间:2009-06-12 00:03:12

标签: iphone testing

不久前,iPhone开发非常简单,只有少数操作系统版本甚至更少的设备。

然而,现在有两个主要的操作系统版本和5个不同的设备需要考虑。

作为一家即将发布多个应用程序的公司,测试已成为越来越多的问题。

测试所有组合的最佳方法是什么,我是否需要购买每一代iPhone和iPod Touch?是否存在我可能需要编写的特定硬件/操作系统组合的问题?

我想我的问题是,“覆盖所有基地所需的最低测试量是多少?”

5 个答案:

答案 0 :(得分:5)

根据我的经验,您在iPod / iPhone之间不会有太多的兼容性问题。还有其他需要注意的问题:

  • 设备运行速度不同。 iPhone v1和iPhone 3G运行频率为412MHz; iPod Touch运行频率为532MHz,新款3GS运行频率为600MHz。如果你变得很有兴趣,这会对性能甚至功能产生很大的影响。
  • EDGE / 3G / WiFi网络之间存在巨大的性能差异;通常这些差异是违反直觉的。 EDGE通常具有比3G更好的延迟(到第一个字节的时间),而3G具有10倍更好的带宽。您需要在所有三种情况下测试您的应用。
  • 您使用的是核心位置吗? iPhone v1和iPod Touch没有GPS。
  • 你在用相机吗? iPod Touch没有相机。
  • 你的应用程序是否与越狱手机兼容?很多人已经完成了它,如果你的应用程序崩溃,他们会责怪你,而不是开发团队的黑客,这将反映出来在您的App Store评分中。请特别注意,后台应用程序可能会耗尽您可能认为专门针对您的应用程序提供的内存。给自己留一些开销。

那么,你需要买什么?如果你是一个认真的开发人员,是的,你应该拥有所有5个设备。但是你需要测试所有5个设备上的每个构建吗?您的每个开发人员每个都需要5个设备吗?否。

一个开发人员可以测试一个iPhone 3G和iPod Touch的重要事项。投入3GS,你的报道可能几近完美。 (请注意,3GS上的开发更好,因为CPU速度更快,因此您的应用程序部署速度更快。)

在工作中,我们每个开发人员都有一台设备,但它们是3G和iPod设备的混合体(现在,还有一台3GS)。

答案 1 :(得分:1)

我对iPhone本身没有多少经验,但总的来说这可能是pairwise testing的一个很好的应用。在实践中,您可以通过详尽的测试通过测试的一小部分获得90%的覆盖率。然后,如果您发现某些配置已经存在,您可以将它们添加到您的配置集中,但仍然不需要进行详尽的传递。

答案 2 :(得分:1)

我不确定这是否是最佳做法。 但我听到很多人正在使用ibetatest来查找您正在寻找的内容。那里有很多热心的beta测试者。    95%的代码在不同版本上运行时不应该有任何问题,像ibetatest这样的东西应该能够捕获剩余的5%。

答案 3 :(得分:0)

获取所有组合是简短的答案。

我刚从iPod开始,但它是100MHz 比以前的iPhone型号更快。我的应用程序 性能敏感,所以我必须得到 一部旧iPhone。我几乎不能问我的beta测试人员 (志愿者?)运行GL表现工具。

答案 4 :(得分:0)

我建议做几件事:

  • 您可能需要一系列设备进行内部测试。正如已经指出的,每一代iPod Touch / iPhone

  • 之间存在各种差异
  • 您可能希望使用众包来补充内部测试。这可能会让您拥有更多的受众来测试您的应用程序,并且使用众包的任何成本都可能因为您可以在设备上花费更少而内部测试人员可能更少,同时可能产生更好的产品。上面没有提到的一个众包测试组是uTest.com