Proxyman で iOS の低速なネットワーク環境をシミュレートする

Proxyman で iOS の低速なネットワーク環境をシミュレートする のカバー画像

1. ネットワークシミュレーションは何に使うのか?

モバイルアプリを開発していると、2G、3G、4G などさまざまな帯域幅で、アプリがどのように動作するかを把握したくなることがあります。このミニ記事では、アプリをテストする際に Proxyman を使って通信環境の悪い状態をシミュレートする方法を紹介します。

2. Proxyman でさまざまなネットワーク環境をシミュレートする方法

2.1 シミュレータに Proxyman 証明書をインストール

通信環境の悪い状態でアプリがどのように読み込まれ、動作するかを確認するには、シミュレータまたは実機でテストするのが直感的です。iOS シミュレータでネットワーク通信を確認する ために、Proxyman 証明書がインストールされていることを確認してください。セットアップが完了すれば、アプリとの間で送受信されるすべてのネットワーク通信をキャプチャできるため、ネットワークのスロットリングを実行できます。

2.2 Proxyman の Network Condition ツールを使う

Proxyman の Network Condition ツールを使うと、ネットワーク環境をシミュレートしたいホストを即座に選択できます。

  1. URL Domain を右クリックし、Tools >> Network Conditions を選択します
Network Condition ツールを有効化
Network Condition ツールを有効化
  1. ドロップダウンのオプションから、2G(Edge)、3G、4G などのインターネット帯域幅を選択します。すると Proxyman は、その範囲内でランダムな帯域幅を生成し、ネットワーク環境をシミュレートします
インターネットの帯域幅を選択
インターネットの帯域幅を選択

2.3 ネットワークのスロットリングのデモ

  • 以下は、iPhone 15 シミュレータで 3G 接続や切断されたネットワーク環境におけるアプリの読み込みを再現する、ネットワークのスロットリングのデモです。
  • クリックして再生:

Proxyman で iOS の低速なネットワーク環境をシミュレート

デモで示したとおり、開発者や QA は Throttle Network 機能を使って、Edge、3G、4G などの複数のネットワークプロファイルでウェブサイトをテストできます。特定の要件に合わせて、独自のネットワークプロファイルの値を追加することもできます。テストの観点から非常に役立つのは、低速な帯域幅でアプリを使うユーザーの体験を改善できる余地があるかどうかを見つけられる点です。改善の例としては、プログレスバーを追加したり、読み込みの遅延によるユーザーのストレスを避けるために待機処理を入れたりすることが挙げられます。

このミニ記事が、アプリのネットワークのシミュレートやスロットリングを行いたい方のお役に立てば幸いです。 Happy coding 👨‍🚀

ダウンロード速度以外もテストする

低速プロファイル、遅延の追加、パケットロス、完全な接続切断をそれぞれ試してみてください。アプリに進捗が表示されるか、適切なタイムアウトの後に待機をやめるか、同じ操作を二重に送信しないか、接続が戻ったときに回復するかを確認しましょう。可能であれば、テスト対象のホストにだけルールを適用し、作業が終わったらオフにしてください。そうしないと、後続の作業に影響が出てしまいます。

Proxyman は、iOS デバイス、iOS シミュレータ、Android デバイス上のアプリやドメインから HTTP(s) 通信をキャプチャして調べられる、高性能な macOS アプリです。

https://proxyman.com/ からダウンロードできます。

Hang Nguyen
Hang Nguyen

2026年7月18日 に改訂。 より詳しい低速ネットワークのテスト項目と、ルールを無効に戻すことへの注意を追加しました。

通信状態が悪いときのアプリの動きを確認しましょう

Proxyman で Network Conditions のルールを適用し、読み込みの遅延、接続切れ、リトライ、回復の動作をテストしましょう。

Network Conditions を試す