2011-01-28 10 views
2

私のiOSアプリケーションは、その機能の中で、特定のサーバーからファイルをダウンロードします。このダウンロードは、ユーザーがアプリで作業している間、バックグラウンドで行われます。ダウンロードが完了すると、ファイルに関連付けられたリソースがアプリ画面に表示されます。ファイルをダウンロードしているときにネットワークに障害が発生した場合のココアタッチアプリをテストするにはどうすればよいですか?

私のユーザーは、私が再現できなかったリソースが不足していると誤報しています。いくつかの副次的な情報は、問題が途中で打ち切られるリソースのファイルのダウンロードによって引き起こされたと思わせる。その後、アプリケーションは、決して完了しない部分的にダウンロードされたファイルを持っています。

仮説を確認し、修正プログラムが動作することを確認し、私の足元でこのようなランダムなネットワークが消滅するかどうかをテストするために、テスト環境でネットワークの損失をシミュレートしたいと思います。私の開発Mac、テストデバイスは、同じMac上で動作するiOSシミュレータです。

ブレークポイントで手動でウェブ共有をオフにするより便利な方法はありますか?

答えて

0

ファイルのダウンロード方法によっては、ダウンロードの途中でコールバックデリゲートをnullに設定することもできます。それでもデータはダウンロードされますが、アプリケーションは単にコールバックの受信を停止します。しかし、本当に接続が切断された場合、アプリケーションがどのように機能するかはわかりません。

もう1つの方法は、ダウンロード要求を外部Webサーバーのランダムファイルに一時的にポイントし、インターネットからコンピュータを切断するだけで途中で終了することです。私はネットワーク接続の問題をテストするためにこれを行いました。通常は動作します。あなたの場合の興味深い問題は、自分のコンピュータからダウンロードしているので、切断することは役に立ちません。これは、アプリケーションが実際にテストサーバーを指しているときにその動作をシミュレートできるように、アプリケーション内でのコールバックの順序を決定できるようにするだけです(コールバックを何時からですか?)。

両方のオプションを組み合わせると、最適なソリューションが得られるはずです。

関連する問題