2011-01-28 98 views
2

我的iOS应用程序的功能之一是从特定服务器下载文件。此下载完全发生在后台,而用户正在使用该应用程序。下载完成后,与该文件关联的资源将出现在应用程序屏幕上。如何在网络在下载文件时失败的情况下测试可可触摸应用程序?

我的用户报告了一些关于我无法复制的资源缺失的错误行为。一些附带信息导致我怀疑问题是由于资源文件的下载在中途中止而造成的。然后该应用程序有一个部分下载的文件,永远不会完成。为了确认假设,为了确保任何修复工作,并测试我脚下的这种随机网络消失,我想模拟我的测试环境中网络的丢失情况:测试服务器在Web上共享我的开发Mac,测试设备是在同一台Mac上运行的iOS模拟器。

是否有一种更方便的方法来做到这一点,而不是手动将Web共享关闭在断点上?

回答

0

根据您下载文件的方式,一种可能的选择是将回调代理设置为在下载过程中为空。它仍会下载数据,但您的应用程序只会停止接收回调。虽然,我不知道如果应用程序真正放弃了连接,它是如何工作的。

另一种选择是暂时将下载请求指向外部Web服务器上的某个随机文件,然后中途将您的计算机与互联网断开。我已经做到了这一点,以测试网络连接问题,它通常工作。在你的情况有趣的问题是,你从你自己的电脑下载,所以断开连接将无济于事。这只是因为您可以在发生这种情况时确定应用程序中的回调顺序,(它会根据什么顺序进行回调?),以便您可以在实际指向测试服务器时模拟该行为。

将这两个选项结合在一起,我猜,以获得最佳解决方案。

相关问题