不久之前iPhone的开发很简单,只有少数操作系统版本和更少的设备。iPhone操作系统测试最佳实践
然而,现在有两个主要的操作系统版本和5个不同的设备要考虑。
作为即将发布多个应用程序的公司,测试已成为越来越多的问题。
什么是测试所有组合的最佳方法,我是否需要获取每一代iPhone和iPod Touch?是否有任何可能需要编码的特定硬件/操作系统组合的陷阱?
我想我的问题是,“覆盖所有基地所需的最低测试数量是多少?”
不久之前iPhone的开发很简单,只有少数操作系统版本和更少的设备。iPhone操作系统测试最佳实践
然而,现在有两个主要的操作系统版本和5个不同的设备要考虑。
作为即将发布多个应用程序的公司,测试已成为越来越多的问题。
什么是测试所有组合的最佳方法,我是否需要获取每一代iPhone和iPod Touch?是否有任何可能需要编码的特定硬件/操作系统组合的陷阱?
我想我的问题是,“覆盖所有基地所需的最低测试数量是多少?”
根据我的经验,iPod/iPhone之间不会有太多的兼容性问题。还有其他需要注意的问题:
那么,你需要购买什么?如果你是一个认真的开发者,是的,你应该有5个可用的设备。但是你需要测试所有5个设备的每个版本吗?每个开发人员都需要5个设备吗?编号
一位开发人员可能可以测试与iPhone 3G和iPod Touch有关的所有事情。折腾3GS,你的覆盖面可能接近完美。 (请注意,由于CPU速度更快,所以3GS的发展更好,因此您的应用部署速度更快)。
在工作中,我们为每个开发人员设置一个设备,但它们是3G和iPod设备的混合设备,今天,一个3GS)。
我对iPhone本身并没有多少经验,但总的来说这可能是pairwise testing的一个很好的应用。在实践中,您可以通过完整测试通行证的一小部分测试获得90%的覆盖率。之后,如果您发现某些配置有问题,您可以将它们添加到您的配置集中,并且不需要进行详尽的传递。
我不确定它是否是最佳做法。 但我听到很多人使用ibetatest正是你在找什么。那里有许多热情的测试者。 对于运行在不同版本上的95%的代码,您不应该有任何问题,并且类似ibetatest的应该会捕获剩余的5%。
获取所有组合是简短的答案。
我刚开始只用iPod,但它的速度比以前的iPhone型号快100MHz 。我的应用程序的 性能非常敏感,所以我必须获得旧版iPhone的 。我几乎不能要求我的测试人员 (志愿者?)运行GL性能工具。
我建议两件事情:
,你可能会需要多种设备为自己的内部测试。正如已经指出的那样,每一代iPod Touch/iPhone都有各种不同之处,您可能需要考虑使用众包来补充您的内部测试。这可能使您有更多的受众来测试您的应用程序,并且使用众包的任何成本都可能被您在设备上花费较少而内部测试人员花费较少并且可能产生更好的产品。上面未提及的一个群众来源的测试组是uTest.com
新的iPod touch有两个摄像头。因此使用设备名称检测相机是不正确的。有一个特定的API调用,告诉你设备是否有摄像头:[UIImagePickerController isSourceTypeAvailable:UIImagePickerControllerSourceTypeCamera] – 2012-04-04 09:49:16