Bean Network Tester

在糟糕的網路上測試你的應用

Bean Network Tester 可以為單一 Windows 應用增加延遲、封包遺失和限速。你會親眼看到使用者在火車上、飯店熱點裡,或者手機只有一格訊號時遇到的情況。

它是針對單一程式而不是整台電腦的網路模擬器,所以你可以為被測應用重現緩慢的網路,同時讓其他一切照常工作。

下載 Windows 版 在 GitHub 上檢視原始碼

免費開源,採用 GPLv3 授權。支援 Windows 10 和 11(64 位)。無需帳號,無遙測。

工具執行時,一次即時 ping 出現封包遺失並增加了延遲
為一個正在執行的連線增加延遲和封包遺失。

它會對你的網路做什麼

讓網路變慢

增加固定或隨機的延遲。看看 300 ms 的 ping 會對你的載入動畫造成什麼影響。

丟棄封包

丟棄、重複或損壞封包,然後觀察你的應用是能恢復,還是直接當機。

限制速度

把下載或上傳限制在設定的每秒 KB 數,就像訊號不好的行動網路那樣。

切斷鏈路

斷開連線,阻斷某個連接埠或位址,或者讓網路時有時無。

只針對一個應用

選擇一個處理程序、PID、位址或連接埠。電腦的其餘部分照常工作。

精確重複

同一個隨機種子會重播同一次執行。這就是一份 bug 報告和一個故事之間的區別。

三步即可執行

  1. 從發行頁面下載 zip 壓縮檔,解壓到任意位置。
  2. 啟動 BeanNetworkTester.exe。它會自行請求管理員權限,因為擷取流量需要這些權限。
  3. 選擇一個現成的設定檔,例如「3G network」,點選 START,然後使用你的應用。

同一個檔案裡還有文字模式,所以整個流程也能在管線中執行。只需一條命令,就能檢查你的服務能否扛住 10% 的封包遺失:

BeanNetworkTester.exe --loss 10 --target myapp.exe --duration 60

時間一到它會自行停止,因此卡住的步驟不會留下一個被破壞的網路。加上 --simulate 可以演練命令,而不觸碰真實流量。

誰在使用

需要重現「在我機器上是好的」的測試人員。需要讓逾時真正發生的開發者。想知道延遲會對網路程式碼造成什麼影響的遊戲開發者。以及所有被問過「應用在網路不佳時能用嗎」,卻沒有可靠方法去驗證的人。

如何完成某件具體的事

簡短的指南,每篇都給出值得嘗試的數值和對應的命令。

準備好故意搞壞自己的網路了嗎?

下載 Windows 版