Bean Network Tester

インターネットなしでアプリをテストする

ネットワークケーブルを抜いて確かめられるのは、ネットワークのないマシンという1つのことだけです。オフラインのバグの多くはそうではありません。アダプターは有効で、Wi-Fiのアイコンも問題なさそうなのに、アプリが必要とするものにだけ到達できないときに起きます。

3種類の「オフライン」

オンにするものアプリに何が見えるか見つかるバグ
LANモードローカルネットワークは動きます。その先はどこにも届きません。ログインする前のホテルのWi-Fi、切れたアップリンク、外への経路がない社内ネットワーク。
アドレスのブロック1台のサーバーに到達できません。ほかはすべて動きます。アプリ自体は正常なのに依存先が1つ落ちている状態。ヘルスチェックがたいてい見逃すケースです。
ポート53のブロック名前が解決されなくなりますが、アドレス指定での接続は動き続けます。壊れたDNS。ユーザーには「インターネットが落ちた」ように見え、ログには全然別のものに見えます。

コマンドラインから

1つのアプリだけインターネットを失い、ローカルネットワークはそのままの状態を2分間:

BeanNetworkTester.exe --lan-mode --target myapp.exe --duration 120

1つのサービスが到達不能で、ほかは正常:

BeanNetworkTester.exe --block-ip 203.0.113.10

名前が解決されなくなる:

BeanNetworkTester.exe --block-port 53 --target myapp.exe

DNSを壊し、自動で元に戻す用意済みタイムラインもあります。プログラムの隣の scenarios フォルダーにある failing-dns.json です。時間で変わるシナリオを参照してください。

実際に確認すること

最後の点にこそ、価値の大半があります。オフラインになるのは、下手に扱いやすく、テストもしやすいものです。戻ってくるときに、状態がおかしくなります。

これではないもの

アダプターは有効なままでマシンはアドレスを保っているため、Windowsに「ネットワークはあるか」とだけ尋ねるアプリは、それでも「はい」という答えを得ます。これは意図的で、よりおもしろいテストです。実際のユーザーが完全に切断されることはまれで、必要なものに届かない何かにつながっているのです。特に「アダプターなし」のケースが欲しいなら、アダプターを無効にしてください。ツールは要りません。

次のステップ

自分のネットワークを、わざと壊してみませんか?

Windows版をダウンロード